[英]problem with join query
我正在尝试选择数据库中帖子所附带的所有标签,但是由于某种原因,每篇带有标签的帖子都只能得到一个标签。
这是我正在使用的查询:
SELECT p.post_id, p.post_title, t.tag_id, t.tag_name
FROM posts p
LEFT JOIN posts_tags pt ON pt.post_id = p.post_id
LEFT JOIN tags t ON pt.tag_id = t.tag_id
有任何想法吗?
每个帖子可以有很多标签。 我建议使用MySQL的GROUP_CONCAT()并将所有标签放入一个字段。 然后,您可以根据需要在脚本中解析该字段。
编辑似乎您在标签表上没有连接,因此仅返回标签的该行。 尝试在ON
子句中切换表,以使其与另一个方向结合。 然后,您需要遍历结果(现在每个标签应该有一行)。我原来的解决方案将所有标签分组到一个字段中。
那应该工作正常。 事实上,因为它靠近我创建了一个SO数据结构使用data.stackexchange.com并能正常工作有
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.