假设我们有一张桌子:
Music track Name
== ====
1 A
2 A
3 B
3 C
3 D
4 C
5 E
5 F
6 E
6 F
.. ..
我想选择所有收听相同且仅相同音轨的姓名。结果应为:
Name
====
B (listens track 3 and only track 3)
D (listens track 3 and only track 3)
E (listens tracks 5, 6 and only tracks 5,6)
F (listens tracks 5,6 and only tracks 5,6)
..
最佳答案
在MySQL中,我将使用两个聚合级别来做到这一点:
select tracks, group_concat(name) as names
from (select name, group_concat(track order by track) as tracks
from t
group by name
) n
group by tracks;
这将列出数据中的每个跟踪组合以及与该列表相关联的用户。
关于mysql - SQL,仅相同选择,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43527814/