SQL 之 ROW_NUMBER() OVER函数用法

本文详细介绍了SQL的ROW_NUMBER() OVER函数,包括其语法和实例演示。通过PARTITION BY和ORDER BY子句,该函数可以实现对数据进行分组排序,并为每个分组内的行赋予唯一的序列号,帮助解决如工资等级等排名问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

语法:

row_number() OVER (PARTITION BY COL1 ORDER BY COL2)

表示根据COL1分组,在分组内部根据 COL2排序,而此函数计算的值就表示每组内部排序后的顺序编号(组内连续的唯一的)

实例:

empid       deptid      salary
----------- ----------- ---------------------------------------
1           10          5500.00
2           10          4500.00
3           20          1900.00
4           20          4800.00
5           40          6500.00
6