我有一个名为Membership的表,其中包含Name和ClubName列。这些基本上表明哪些人属于哪个俱乐部。表人和俱乐部有多对多的关系。我想要找到的是那些根据他们在同一个俱乐部中了解最多其他人的人。因此,对于会员中的每个人来说,计算与他们在同一个俱乐部中的所有不同的人,并返回最多的人。我怎么能这样做?
答案 0 :(得分:0)
尝试这样的事情:
select
m.name,
count (distinct m2.name)
from
Membership m join
Membership m2 on m.clubName = m2.clubName
group
by m.name
order by
count (distinct m2.name) desc