SELECT TOP column FROM table [ORDER BY column [DESC]]
如果想返问表中行的子集,仅需要返回特定数量的记录,而不管符合条件的行有多少。要返回排在前面的值,可以有两个选择:指定固定数量的行,或者指定总行数的百分比。SQL Server不对这些数据做任何分析,共至在截断列表时,也不会考虑这些值是不是已经排过序。
1. WITH TIES语句
用WITH TIES可以把所有和最后一行相同的己排序记录都加到结果集中。
SELECT TOP 10 WITH TIES Name, ListPrice FROM Production.Product ORDER BY ListPrice DESC
除了使用TOP语句来指定一定数量的记录外,还可以指定整个结果集的百分比。SQL Server将对记录进行计算,并圆整为最近的整数。它首先对返回记录进行计算,然后用TOP X PERCENT子句来替换TOP X百分比。
SELECT TOP 10 PERCENT Name, ListPrice FROM Production.Product ORDER BY ListPrice DESC