A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 靳石磊 中级黑马   /  2013-1-22 12:05  /  1202 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

sql server中用Row_Number分页怎么用?比用top分页效率高还是低?

评分

参与人数 1技术分 +1 收起 理由
潘梦军 + 1

查看全部评分

1 个回复

倒序浏览
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

评分

参与人数 1技术分 +1 收起 理由
潘梦军 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马