按频度高低的select语句怎么写?

zjroland 2014-12-24 10:21:49
比如有一个表 TableFruit,
FruitID FruitName
1 苹果
2 梨子
3 桃子
4 苹果
5 西瓜
6 苹果
7 桃子
8 李子
9 苹果
10 橘子
11 柿子
12 龙眼
13 李子
14 柿子
15 香蕉
16 梨子
17 苹果
18 龙眼
19 李子
20 桃子
我需要按照FruitName出现频度的高低,选出其中的5种,该如果写select语句?
...全文
62 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjroland 2014-12-24
  • 打赏
  • 举报
回复
我测试一下,然后结贴给分
还在加载中灬 2014-12-24
  • 打赏
  • 举报
回复
SELECT TOP 5 FruitName FROM TB
GROUP BY FruitName
ORDER BY COUNT(FruitID) DESC
山寨DBA 2014-12-24
  • 打赏
  • 举报
回复
排序错了,改一下:
select top 5 FruitName from TableFruit group by FruitName  order by count(FruitID) desc
山寨DBA 2014-12-24
  • 打赏
  • 举报
回复
select top 5 FruitName from TableFruit group by FruitName order by count(FruitID)
AcHerat 元老 2014-12-24
  • 打赏
  • 举报
回复

--体现水果出现频度
;with acherat as
(
    select FruitName,count(1) as sumcnt
    from tb
    group by FruitName
)

select top 5 *
from acherat
order by sumcnt -- asc/desc

34,594

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧