我有一个表呼叫用户,如下所示:
id name ref_id
-- ---- ------
1 Sam 0
2 Jack 1
3 Sue 2
4 Sam2 1
5 Sue2 3
6 Sam3 1
7 Alan 3
8 Tom 3
9 Lyn 2
10 Van 1
我想选择有3个人推荐的用户。 是否可以编写查询并选择:
Name
--
Sam
Sue
答案 0 :(得分:1)
您可以使用下面的自我加入
SELECT a.`name` FROM ref a LEFT JOIN ref b
ON a.id = b.ref_id
GROUP BY a.name
HAVING COUNT(b.id) >2
试试这个Demo
答案 1 :(得分:0)
您可以使用以下查询:
select Count(u1.name) unit,u1.name from ref as u1 INNER JOIN ref as u2 ON u1.Id = u2.ref_id
group By u1.id
having unit > 3
你可以更换单位> 3至单位> 2