我有一个用 PHP 和 MySQL 实现的标记系统,具有下表:
表:blog_tags
- tag_id
- 标签名称
表:blog_tags_assoc
- tag_assoc_id
- article_id
- tag_id
表:blog_articles
- article_id
- 文章标题
- 文章内容
我使用多对多关系将它们全部链接起来 (引用类似的内容:How to store tags in MySQL tags, one field in total or one filed for each tag?)
我现在想做的是进行一个 MySQL 查询,从 blog_tags 中选择 blog_articles 中的文章实际引用的所有标签。
到目前为止,我知道“HAVING”是我可能会使用的东西......但我不确定如何使用? 任何想法或建议都将受到欢迎。谢谢!
最佳答案
如果您只想知道文章中使用过的标签,那么您可以简单地这样做:
SELECT DISTINCT tag_id, tag_name
FROM blog_tags
INNER JOIN blog_tags_assoc USING ( tag_id );
关于php - MySQL 查询标签系统,仅选择使用过的标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7604509/