SQL语句中ROW_NUMBER() OVER()函数的用法

时间:2024-04-06 22:08:33

语法:ROW_NUMBER() OVER(PARTITION BY COLUMN ORDER BY COLUMN)
PARTITION 分割

row_number() over()分组排序功能:
在使用 row_number() over()函数时候,over()里头的分组以及排序的执行晚于 where 、group by、 order by 的执行。

一、ROW_NUMBER() OVER (ORDER BY Column1 DESC)

根据Column1 降序排列,再为降序之后的每条数据加上序号。

二、ROW_NUMBER() OVER(PARTITION BY Column1 ORDER BY Column2)

根据column1分组,再在组内按照column2升序排列,加上序号。

如下图,先按部门id分组,然后在组内再排序(可升可降)
SQL语句中ROW_NUMBER() OVER()函数的用法
详解见:https://blog.csdn.net/qq_25221835/article/details/82762416