SQL Server 2012
我们有一张表,如:
ticket, type
------------------
1234, hardware
1543, software
8859, network
5832, hardware
4900, hardware
8403, software
7859, network
4332, telephone
8721, database
我们的目标是计算属于每种类型的所有票证(因此在这种情况下,结果应该是3个硬件,2个软件,2个网络,1个电话和1个数据库票证),命令它们desc并选择前5行结果。
我们正在尝试确定前5名“热门”或最常见的故障单类型(以及有多少种类型)。
我的计数部分已经缩减,但不知道如何继续订购desc并选择前5个。
谢谢!
答案 0 :(得分:11)
在SQL Server中,您可以使用TOP
选择一定数量的行以及订单,以获取正确的记录:
select top 5 type, count(*) Total
from yourtable
group by type
order by total desc
答案 1 :(得分:0)
select * from (
select type, count(*)
from table
group by type
order by 2 desc
)
where rownum <=5