gpt4 book ai didi

php - 加入 1 个 MySQL 行和几个结果

转载 作者:行者123 更新时间:2023-11-30 23:38:40 24 4
gpt4 key购买 nike

我在列出文章及其各自的标签时遇到问题,也许有人可以帮助我。

想象一下查询:

select *.articles, tags.tag_name 

from articles

left join tags on tags.article_id = articles.article_id

where articles.article_id = 1

如果文章只有一个标签,这会很好地工作。问题是如果文章有超过 1 个标签,那么同一篇文章的每个标签我得到 1 行。如果我想在一个页面中显示这些文章,它会显示许多相同的文章。

有没有办法将其保留在一行中,或者我是否需要使用两个查询,一个用于文章信息,一个用于标签?这会很糟糕,因为包含 50 篇文章的列表需要 50 次查询才能显示它们的标签。

最佳答案

如果一篇文章可以有多个标签,您必须创建一个包含文章 ID 和标签的中间表,这样您就可以将许多文章与许多标签链接起来。

那么你的查询将是

select *.articles, tags.tag_name 

from articles

inner join rel_tags on articles.article_id = rel_tags.article and articles.article_id = 1

inner join tags on rel_tags.tag = tags.tag_id

关于php - 加入 1 个 MySQL 行和几个结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5301855/

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