在表格中,我有如下记录:
ID, ID1, ID2
1, 2, 3
2, 2, 4
3, 2, 5
4, 3, 3
4, 3, 4
4, 4, 3
4, 4, 4
4, 4, 5
我希望能够找到表中存在的所有ID1值,其中包含所有ID2值3,4和5
所以在这种情况下,我想要一些SQL只取出ID1 = 2和ID1 = 4,但不是ID1 = 3因为ID1 = 3只存在ID2 = 3而ID2 = 4 ...所以它丢失了ID2 = 5的行,因此我不希望它包含在我的结果集中。
有一种有效的方法吗?
TY!
答案 0 :(得分:3)
您将需要使用以下选项来选择id2
值为3,4或5的所有行,然后使用having子句应用group by以确保返回3 distinct { {1}}值:
id2
此类查询称为relational division。