entry_id cat_id
---------------- ----------------
1 1
1 2
1 3
2 2
3 4
我知道标题不是很有帮助,但基本上,如果设置了某些类别,我需要返回一行的条目ID。
所以例如我需要返回一个cat_id为1且为2或3的entry_id。
如果我们可以避免重复结果会很好,但是如果不可能的话,我总是可以用PHP删除重复项。
非常感谢帮助。
答案 0 :(得分:3)
SELECT DISTINCT t1.entry_id
FROM yourTable t1
JOIN yourTable t2 ON t1.entry_id = t2.entry_id
WHERE t1.cat_id = 1
AND t2.cat_id IN (2, 3)
答案 1 :(得分:0)
试试这个:
SELECT entry_id
FROM table1
WHERE cat_id = 1
OR cat_id IN (2, 3)
GROUP BY entry_id
由于不清楚你在问什么,我会做出其他尝试:
SELECT entry_id
FROM table1
WHERE cat_id = 1
AND (cat_id = 2 or cat_id = 3)
GROUP BY by entry_id