在一个表里,如何查找同时购买物品A,B,C的人。。
人名 购买物品
jet A
charley B
charley C
tyrone A
tyrrone C
charley C嵌套select语句可以实现,但是这样很难用,如我要查询同时购买四种物品人,就需要嵌套四个select请问有好的方法么?
人名 购买物品
jet A
charley B
charley C
tyrone A
tyrrone C
charley C嵌套select语句可以实现,但是这样很难用,如我要查询同时购买四种物品人,就需要嵌套四个select请问有好的方法么?
from tb
group by 人名
having count(distinct 购买物品)=3
FROM tb
GROUP BY 人名
HAVING COUNT(DISTINCT 购买物品)=3;
如果像下面这样,这个语句就无能为力了。在一个表里,如何查找同时购买物品A,B,C的人。。
人名 购买物品
jet A
charley B
charley C
tyrone A
tyrrone C
charley C
tyrone D
...
from tb
group by 人名
having count(distinct 购买物品)=3
where 购买物品 in (A,B,C)