(转)top关键字与top表达式(SQLServer)

SQLServer 中,top也很有用,例如查询部分数据,还可以用表达式。其语法如下:

SELECT TOP number|percent column_name(s)
FROM table_name

1.select * from 成绩信息

 

2. select top 10 * from 成绩信息

这样就可以选取成绩信息表中的前10行的数据了。

 

3.select top 10 percent * from 成绩信息

总行数是73,那么就会选择10%行数的数据进行显示

 

4.declare @i int

set @i=20

select top (@i) percent * from 成绩信息

声明了一个变量i为整型,然后对变量i复制为20,然后就可以限制20%行数的数据了。

 

5.declare @i int

set @i=20

select top (@i)  * from 成绩信息

这样就是显示前20行的数据

 

6.select * from 成绩信息 order by 分数

对显示出来的数据根据分数进行排序

 

7.select top (6)  * from 成绩信息 order by 分数

这样是根据分数排序之后只显示前六行,但是从上图可以看到第六个记录里面分数是74,后面几行的记录也是74,为了避免后面相同的数据会被遗漏的情况,就要使用with ties

 

select top (6) with ties  * from 成绩信息 order by 分数

使用with ties的时候后面需要紧跟order by子句,这样使用with ties之后就可以将最后几条相同记录的信息都显示出来。就不会只是显示前6条记录了。

 

转自:http://blog.sina.com.cn/s/blog_68b156d50101jrzz.html

原文地址:https://www.cnblogs.com/sdadx/p/7345817.html