这是我的表:
Srlno Item Code Category Code
1 BT/000001 CLR
2 BT/000001 SIZ
3 BT/000001 WAT
1 BT/000002 Swt
2 BT/000002 Mol
3 BT/000002 SIZ
我使用此查询:
SELECT Item_Code
FROM T_SubCatogoryDtls
WHERE SubCat_code in (N'SIZ' , N'Swt')
GROUP BY Item_Code
但结果是:
BT/000001
BT/000002
我需要BT/000002
,因为此商品代码中的类别代码Siz
和Swt
很常见
什么是正确的查询
答案 0 :(得分:2)
您必须添加HAVING
子句:
SELECT Item_Code
FROM T_SubCatogoryDtls
WHERE SubCat_code in (N'SIZ' , N'Swt')
GROUP BY Item_Code
HAVING COUNT(DISTINCT SubCat_code) = 2
HAVING
过滤掉任何Item_Code
组 代码,即'SIZ'
和 'Swt'
。