gpt4 book ai didi

php/mysql 标签查询模式

转载 作者:行者123 更新时间:2023-11-29 08:52:16 29 4
gpt4 key购买 nike

我有一个 3 表标签系统,主题、标签和标签主题。

我现在想在显示主题时显示每个主题的各种标签。由于一个主题有多个标签,因此当我执行下面的查询时,我会得到多行,并且该主题显示多次,每行显示一次。我认为我不能使用 groupby,因为我没有对列进行任何数学运算。我真正想要的是对于每个主题,显示主题,然后显示帖子的标签列表,例如(对于 Siri),“iphone,智能手机,Siri”。表:

topics
id | name |userid
tags
id | topicid | topicname
tagtopic
id | tagid | topicid '

$sql = "SELECT * FROM `topics` t
LEFT JOIN `tagtopic` tagtopic
on t.id = tagtopic.topicid
WHERE t.id= '12'";

应该提到显示是通过 while($row = mysql_fetch_array($res)) 完成的,以便显示记录集的行。我希望它显示主题一次,但由于为标签创建了多行,因此它显示多次。

我是否必须放弃连接并执行子查询?感谢您的任何建议。

最佳答案

你可以做GROUP_CONCAT这会将所有标签放入一个以逗号分隔的字段中。

SELECT GROUP_CONCAT(tt.tagid) FROM topics t
JOIN tagtopic tt ON tt.topicid = t.topicid
WHERE t.id=12
GROUP BY t.id

关于php/mysql 标签查询模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10851569/

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