Als er geen unieke beperkingen zijn, probeer dan:
SELECT post_id
FROM tags
WHERE tag_id = 1 OR tag_id = 3
GROUP BY post_id
HAVING count(DISTINCT tag_id) = 2;
Of gebruik deze HAVING
clausule, als u slechts twee tag_id
. probeert te detecteren waarden:
HAVING MIN(tag_id) <> MAX(tag_id)
Als post_id en tag_id beide een unieke beperking hebben, zou dit ook moeten werken:
SELECT post_id
FROM tags
WHERE tag_id = 1 OR tag_id = 3
GROUP BY post_id
HAVING count(*) = 2;