2017-04-04 70 views
-1

的独特组合仅排我的影片获取的结果就像一个SQL查询:选择有两列

[{"id":89,"sender_id":2,"reciever_id":1,"message":"no reply","deleted_at":null,"created_at":"2017-04-04 17:01:20","updated_at":"2017-04-04 17:01:20"}, 

{"id":88,"sender_id":1,"reciever_id":2,"message":"hiiiii","deleted_at":null,"created_at":"2017-04-04 16:59:47","updated_at":"2017-04-04 16:59:47"}, 

{"id":87,"sender_id":5,"reciever_id":1,"message":"hiiiii","deleted_at":null,"created_at":"2017-04-04 16:59:43","updated_at":"2017-04-04 16:59:43"}, 

{"id":86,"sender_id":1,"reciever_id":5,"message":"hiiii","deleted_at":null,"created_at":"2017-04-04 16:59:38","updated_at":"2017-04-04 16:59:38"}, 

{"id":85,"sender_id":1,"reciever_id":5,"message":"hiii vRUN\n","deleted_at":null,"created_at":"2017-04-04 16:10:51","updated_at":"2017-04-04 16:10:51"}] 

但我想的sender_idreciever_id只有独特的组合。我只需要5行中的2行,因为只有2行有独特的组合。像这样:

[{"id":89,"sender_id":2,"reciever_id":1,"message":"no reply","deleted_at":null,"created_at":"2017-04-04 17:01:20","updated_at":"2017-04-04 17:01:20"}, 

{"id":87,"sender_id":5,"reciever_id":1,"message":"hiiiii","deleted_at":null,"created_at":"2017-04-04 16:59:43","updated_at":"2017-04-04 16:59:43"}, 

我该如何做到这一点?

+2

两者有什么区别? –

+0

请更新您的查询 –

+0

1-分组标准是什么 2-除非您使用像SUM(),MAX()这样的集合函数,否则您不能像这样对列进行分组。3-我确定这个问题已经在这个网站回答 –

回答

0

添加GROUP BY这样

SELECT * 
FROM yourTable 
GROUP BY SUBSTRING_INDEX(SUBSTRING_INDEX(,',',3),':',-1) 

样品

mysql> SELECT SUBSTRING_INDEX(SUBSTRING_INDEX('[{"id":89,"sender_id":2,"reciever_id":1,"message":"no reply","deleted_at":null,"created_at":"2017-04-04 17:01:20","updated_at":"2017-04-04 17:01:20"},' ,',',3),':',-1) as result; 
+--------+ 
| result | 
+--------+ 
| 1  | 
+--------+ 
1 row in set (0,00 sec) 

mysql>