gpt4 book ai didi

mysql - 选择查询以获取每个 post_id 的标签

转载 作者:太空宇宙 更新时间:2023-11-03 11:05:22 25 4
gpt4 key购买 nike

我正在尝试进行简单的 mysql 选择查询,我有 3 个表

post: post_id...
tags: tag_id, tag_name
post_tag: id_post, id_tag

然后我写了这个查询:

$sql=mysql_query("select * from post 
LEFT JOIN post_tag
ON post_tag.id_post = post.post_id
LEFT JOIN tags
ON post_tag.id_tag = tags.tag_id
GROUP BY post_id
ORDER BY post_id
DESC LIMIT 5");

但即使有更多具有相同 post_id 的标签,我每篇文章也只能获得一个标签?

while($row=mysql_fetch_array($sql)) 
{
$post_id =$row['post_id '];
$tag_name=$row['tag_name'];

echo $post_id $tag_name;
}

最佳答案

你可以使用类似的东西:

SELECT post_id, GROUP_CONCAT(tag_name) AS tag_name FROM post 
LEFT JOIN post_tag
ON post_tag.id_post = post.post_id
LEFT JOIN tags
ON post_tag.id_tag = tags.tag_id
GROUP BY post_id
ORDER BY post_id
DESC LIMIT 5

这将为您提供每篇文章的一条记录,其中包含链接到该文章的每个标记名的逗号分隔列表。

关于mysql - 选择查询以获取每个 post_id 的标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12283007/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com