我有下表 (id, Tag)
具有以下值
(1, 17)
(1, 31)
(2, 17)
(3, 31)
当我查询以下内容时
"SELECT id FROM table WHERE 1 AND Tag=17 AND Tag=31"
我希望它返回 (id)
(1)
但事实并非如此。 (返回 0 行)
这里有什么问题吗?
最佳答案
对于任何特定行,标记不能同时为 17 和 31。You need
SELECT id
FROM table
WHERE Tag in (17, 31)
GROUP BY id
HAVING COUNT(DISTINCT Tag) = 2
关于mysql - Where A=1 AND A=2 returns 0 row problem - (Short Mysql question),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5889809/