0
现在我正在开发一个新闻网站。每条新闻都有一个标签。用户可以通过标签过滤新闻。他有三个字段(所有字段都是可选的,以填补)在MySQL中过滤项目
1)至少有一个标签应该是在文章中
2)标签必须为每一篇文章中
3)标签必须不在文章链接到文章
标签与表
`news_id`|`tag_id`
1 | 2
4 | 1
4 | 4
5 | 1
5 | 5
... | ...
当用户按下Save filter
我收到的标签标识。 如何使用一个mysql查询过滤news_id
?
现在,我有这个疑问
SELECT * FROM `app_news_newstag` GROUP BY `news_id` HAVING `tag_id` IN ('1', '4', '5') AND `tag_id` NOT IN ('2')
我想,它涵盖了第一和第三个字段,但我坚持了第二
嗯,但你的查询将覆盖第二个领域? – Rulisp
你的问题是关于'news_id'和'tag_id'并处理包含和排除。如果你有不同的问题,你应该把它作为一个问题,提供样本数据和期望的结果。 –