黑马程序员技术交流社区
标题:
sql语句
[打印本页]
作者:
WENZISUN
时间:
2013-12-17 19:46
标题:
sql语句
本帖最后由 WENZISUN 于 2013-12-18 22:06 编辑
row number用法,举些实例
作者:
许庭洲
时间:
2013-12-17 20:27
本帖最后由 许庭洲 于 2013-12-17 20:29 编辑
1. ROW_NUMBER OVER()函数可以计算每一行数据在结果中的行号(从1开始计数);
2. 使用语法:ROW_NUMBER OVER (排序规则);
3. 比如执行下面的SQL语句:
SELECT ROW_NUMBER() OVER(ORDER BY FSalary), FNumber, FName, FSalary, FAge FROM T_Employee
执行完毕就能在输出结果中看到下面的执行结果:
//////////////////////////////////////////2013-12-17/////////////////////////////
------------------------------------------------------------------------------------------
| 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.00 | 28 |
------------------------------------------------------------------------------------------
//////////////////////////////////////////2013-12-17////////////////////////////////
4. 可以看到第一列中的数据就是通过ROW_NUMBER()计算出来的行号。
作者:
雨中恋人
时间:
2013-12-17 23:53
select *
from (select * ,row_number()over(order by ID) as Row from tab)as a
where row<=5
用法 row_number()over(order by ID) --order by 排序列
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2