黑马程序员技术交流社区
标题:
sql server中Row_number的使用
[打印本页]
作者:
靳石磊
时间:
2013-1-22 12:05
标题:
sql server中Row_number的使用
sql server中用Row_Number分页怎么用?比用top分页效率高还是低?
作者:
许庭洲
时间:
2013-1-22 12:47
1. ROW_NUMBER()函数可以计算每一行数据在结果集中的行号(从1开始计数),其使用语法如下:
ROW_NUMBER OVER(排序规则)
2.举例子:
SELECT ROW_NUMBER( ) OVER(ORDER BY FSalary),FNumber,FName,FSalary,FAge FROM T_Employee
3.执行完毕就能在输出结果中看到下面的执行结果:
FNumber FName FSalary FAge
1 DEV001 Tom 8300.00 25
2 SALES002 Kerry 6200.00 28
3 HR002 Tina 5200.36 25
4 SALES001 John 5000.00 23
5 IT001 Smith 3900.00 28
6 IT002 <NULL> 2800.00 27
7 DEV002 Jerry 2300.80 28
8 HR001 Jane 2200.88 23
9 SALES003 Stone 1200.00 22
4.从上面的执行结果可以看到第一列中的数据就是通过ROW_NUMBER( ) 计算出来的行号;
5.TOP关键字用来返回结果集中的N条记录,其语法为“SELECT TOP 限制结果集数目 字段列表 SELECT语句其余部分”;
6.例如检索工资水平排在前五位(按照工资从高到低)的员工信息:
select top 5 * from T_Employee order by FSalary Desc
7.执行完毕就能在输出结果中看到下面的执行结果:
FNumber FName FAge FSalary FSubCompany FDepartment
DEV001 Tom 25 8300.00 Beijing Development
SALES002 Kerry 28 6200.00 Beijing Sales
HR002 Tina 25 5200.00 Beijing Sales
SALES001 John 23 5000.00 Beijing Sales
IT001 Smith 28 3900.00 Beijing InfoTech
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2