快速 SQL 问题!按属性出现次数最多的地方排序
Posted
技术标签:
【中文标题】快速 SQL 问题!按属性出现次数最多的地方排序【英文标题】:Quick SQL question! Sort by most occurences of an attribute 【发布时间】:2011-01-12 01:36:03 【问题描述】:我有两个这样的表:
分类: ID - 名称 - 描述
项目 ID - 名称 - CategoryID - 描述 - 价格
我想要一个查询,它返回按项目表中出现次数最多的类别列表。
【问题讨论】:
【参考方案1】:这应该可以解决问题:
SELECT c.ID, c.Name, count(i.ID)
FROM Categories c
LEFT JOIN Items i on (c.ID=i.CategoryID)
GROUP BY c.ID
ORDER BY count(i.ID)
【讨论】:
【参考方案2】:SELECT
CategoryID, count(*)
FROM
items
GROUP BY
CategoryID
ORDER BY
2 DESC
然后,您可以加入类别以获取其名称。
【讨论】:
以上是关于快速 SQL 问题!按属性出现次数最多的地方排序的主要内容,如果未能解决你的问题,请参考以下文章