我有3个表,文章,标签和article_tags。通过使用IN()语句找到属于其中一个标签的所有文章并不难。但是,我只需要找到包含所有选定标签的文章......
有什么想法吗? 谢谢, MC
答案 0 :(得分:2)
假设您有标签ID列表。
您可以传递要检索的标签总数,因此您可以按照获得的标签数量过滤该组:
示例:
SELECT at.article_id
FROM article_tags at
WHERE at.tags_id in (2,3,4)
GROUP BY at.article_id
HAVING count(*) = 3
答案 1 :(得分:0)
假设您的articles
表格中有id
列,您的tags
表格中有id
列,而您的article_tags
表格至少有两列{ {1}}和article_id
,这应该会为您提供包含所有标记的文章ID:
tag_id