时间:2021-07-01 10:21:17 帮助过:13人阅读
常有两种使用方式:
一、选择前N条记录
示例1:查询出病假时间较少的前10个职员的信息
1 USE AdventureWorks2014
2 SELECT TOP 10 [SickLeaveHours]
3 FROM [HumanResources].[Employee]
4 ORDER BY [SickLeaveHours]
查询结果:
SickLeaveHours
1 20
2 20
3 20
4 20
5 20
6 20
7 21
8 21
9 21
10 21
二、选择前N%的记录
示例2:查询病假时间较少的前百分之2个职员的信息
1 USE AdventureWorks2014
2 SELECT TOP 2 PERCENT [SickLeaveHours]
3 FROM [HumanResources].[Employee]
4 ORDER BY [SickLeaveHours]
查询结果:
SickLeaveHours
1 20
2 20
3 20
4 20
5 20
6 20
特别的,WITH TIES 关键字的使用:
一般包含TOP的查询显示规定数量的结果,TOP N 只显示N条记录,对于TOP N PERCENT 只显示总数N%的结果。
但是包含WITH TIES 的查询在先显示规定数量的结果后,与结果最后一条记录的排序字段值相同的记录也被显示
示例3:在实例1的基础上加上WITH TIES 关键字
1 USE AdventureWorks2014
2 SELECT TOP 10 WITH TIES [SickLeaveHours]
3 FROM [HumanResources].[Employee]
4 ORDER BY [SickLeaveHours]
查询结果:
SickLeaveHours
1 20
2 20
3 20
4 20
5 20
6 20
7 21
8 21
9 21
10 21
11 21
12 21