我有一个具有以下结构的表格
id phone_number message schedule_id
1 | 1212121212 | aaaaa | 12
2 | 2323232323 | bbbbb | 12
3 | 1212121212 | ccccc | 12
4 | 1212121212 | ddddd | 13
我想获取具有相同phone_number和不同schedule_id的行 我使用以下查询来获取具有相同电话号码的行
select * from message group by to_number having count(*)>1;
但它也将具有不同 Schedule_id 的行分组
有人可以帮我写这个查询吗?
最佳答案
您可以使用EXISTS
:
select m.*
from message m
where exists (select 1 from message m1 where m1.to_number = m.to_number and m1.id <> m.id);
您还可以使用GROUP BY
,只需也包含该列即可:
select to_number, schedule_id
from message
group by to_number, schedule_id
having count(*) > 1;
关于mysql - SQL,按一列与一个不同列进行分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54632562/