查询查询熟人数量的SQL查询

时间:2014-10-08 13:26:38

标签: sql

我有一个名为Membership的表,其中包含Name和ClubName列。这些基本上表明哪些人属于哪个俱乐部。表人和俱乐部有多对多的关系。我想要找到的是那些根据他们在同一个俱乐部中了解最多其他人的人。因此,对于会员中的每个人来说,计算与他们在同一个俱乐部中的所有不同的人,并返回最多的人。我怎么能这样做?

1 个答案:

答案 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