我在Oracle 11g中有一个表.suggestion-text {
margin: 5px 0;
box-sizing : border-box;
padding : 20px;
}
.suggestion-actionbuttons{
display : flex;
}
.actions-small{
display : flex;
}
.approved{
margin-top : 7px;
}
:
HeldItems
说我想要Carrier Item
1 A
1 B
1 C
2 B
2 C
3 E
4 A
4 B
4 C
4 D
4 E
子集A,B和C的Carrier
来达到这个效果:
Item
我试图通过以下方式获取它们:
Carrier
1
4
但这显然会让我SELECT Carrier
FROM HeldItems
WHERE Item IN ('A', 'B', 'C')
GROUP BY Carrier
像2,我不能
Carrier
我需要使用哪些条件来获取仅符合项目子集(A,B,C)的ID?
答案 0 :(得分:2)
您当前的查询已结束。您可以计算HAVING
子句中不同项目的数量,并验证有3个不同的项目。
SELECT Carrier
FROM HeldItems
WHERE Item IN ('A', 'B', 'C')
GROUP BY Carrier
HAVING COUNT(DISTINCT Item) = 3
这将返回具有项目A,B和C的子集的所有运营商,以及可能还有其他项目。如果您还想查找仅包含这三项的运营商,则可以修改上述查询。