gpt4 book ai didi

mysql - 按使用标签的帖子数量排序标签?

转载 作者:行者123 更新时间:2023-11-29 01:43:12 24 4
gpt4 key购买 nike

我有两个表,一个名为 Tags,另一个名为 Posts_Tags,用于多对多关系。 Posts_Tags 包含两列,postidtagidTags数据库还包含一个id列,对应联表中的tagid

我想获取要显示给用户的标签名称列表,按使用次数排序。使用此信息,我构建了一个将两个表连接在一起的查询:

SELECT Tags.name FROM `Tags` LEFT JOIN `Posts_Tags` ON Tags.id = Posts_Tags.tagid

这为我提供了一个标签名称列表,但显然,它只不过是纯粹从 Tags 表中选择数据而已。我知道我需要在某处添加一个 ORDER BY 子句(可能还有一个 GROUP BY,但我不确定如何构建查询。

我应该向这个查询添加什么才能成功地按照每个标签在其中使用的帖子数量对我的结果进行排序?

最佳答案

使用Group By 来统计每个标签被使用的次数。这假设您的标签名称是唯一的,如果不是,您将希望改为对 id 进行分组。

Select
t.Name,
Count(*) as TagUse
From
Tags t
Left Join
Post_Tags p
On t.Id = p.TagID
Group By
t.Name
Order By
TagUse Desc

关于mysql - 按使用标签的帖子数量排序标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14025022/

24 4 0