gpt4 book ai didi

mysql - 按发生顺序排列结果

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

我有以下两个表。

书签标签(书签ID,标签ID)标签(标签ID、标题)

目前我正在选择所有具有适当 BookmarkID 的标签。问题是我只想选择标签一次以避免结果重复,并且只带回出现次数最多的标签。

这是我当前的 SQL 查询:

SELECT Tag.Title 
FROM `Tag` INNER JOIN BookmarkTag
WHERE BookmarkTag.BookmarkID = 1 AND Tag.TagID = BookmarkTag.TagID'

最佳答案

您需要将连接条件放在 JOIN 关键字之后的 ON 子句中。 where子句中。
您混合了 SQL89 和 SQL92 语法。这可能行得通,我还没有测试过,但速度更快。

SELECT Tag.Title 
FROM `Tag` t
INNER JOIN BookmarkTag b ON (t.tagid = b.tagid)
WHERE B.BookmarkID = 1
GROUP BY t.tagid
ORDER BY count(*) DESC

为了使每个标签的结果唯一,对 tagid 进行group by
然后您可以order by occurrence 通过使用 count(*) 查看使出现次数最多的标签浮到顶部。
(尝试始终使用 count(*) 因为它比 count(afield) 更快)

关于mysql - 按发生顺序排列结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6324338/

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