Um zu überprüfen, ob ein Titel SOWOHL „Kategorie1“ als auch „Kategorie2“ hat, können Sie die folgende SQL-Abfrage verwenden:
SELECT title
FROM post
JOIN tag ON post.post_id = tag.post_id
WHERE tag.tag_id IN (SELECT tag_id FROM tag WHERE tag = 'category1')
AND tag.tag = 'category2';
Um nach anderen Kategorien zu suchen, wiederholen Sie einfach die WHERE-Klausel:
SELECT title
FROM post
JOIN tag ON post.post_id = tag.post_id
WHERE tag.tag_id IN (SELECT tag_id FROM tag WHERE tag = 'category1')
AND tag.tag_id IN (SELECT tag_id FROM tag WHERE tag = 'category2')
AND tag.tag = 'category3';
Dies würde Ergebnisse für Titel zurückgeben, die alle 3 Kategorien haben.