+------+---------+
| id | object |
+------+---------+
| 1 | 1 |
| 1 | 2 |
| 1 | 3 |
| 2 | 1 |
| 2 | 3 |
| 2 | 4 |
| 3 | 5 |
| 3 | 3 |
| 3 | 4 |
+------+---------+
我想选择具有对象1,2,3的id,但结果只是id = 1,如果没有对象1,2,3则忽略另一个id。 忽略只有对象1和3的id 2,并忽略只有对象3的id 3。
感谢您的帮助,掌握。
答案 0 :(得分:3)
GROUP BY
/ HAVING
可以帮助您找到所有3个存在的ID;
SELECT id
FROM Table1
WHERE object IN (1,2,3)
GROUP BY id
HAVING COUNT(DISTINCT object) = 3
基本上它的作用是获取object
等于1,2或3的所有行,并返回不同对象值的数量为3的id。