Tar*_*rak 4 sql select group-by distinct having
我有一张桌子如下
ID Username GroupID
1 venkat 2
2 venkat 3
3 ramu 1
4 ramu 2
Run Code Online (Sandbox Code Playgroud)
使用sql语句我想检索groupids 2,3中可用的所有用户名
在这种情况下,只有Venkat是groupid 2和3中可用的用户名
请帮助我
Sah*_*hah 10
试试这个:
SELECT userName
FROM tableA
WHERE groupId IN (2, 3)
GROUP BY userName
HAVING COUNT(DISTINCT groupId) = 2;
Run Code Online (Sandbox Code Playgroud)
OUTPUT
| USERNAME |
|----------|
| venkat |
Run Code Online (Sandbox Code Playgroud)
使用平原的替代方法JOIN;
SELECT DISTINCT t1.username
FROM MyTable t1 JOIN MyTable t2
ON t1.username = t2.username AND t1.groupid=2 AND t2.groupid=3;
Run Code Online (Sandbox Code Playgroud)