简单的说row_number()从1开始,为每一条分组记录返回一个数字。
ROW_NUMBER() OVER (ORDER BY xlh DESC) 是先把xlh列降序,再为降序以后的每条xlh记录返回一个序号。
SELECT P.*,(ROW_NUMBER() OVER (ORDER BY ID DESC)) PX FROM MST_PAROLE P WHERE P.STEPID!='-1'
解释:以ID 降序排序,PX 为排序序号(从1开始自增)
ROW_NUMBER() OVER (PARTITION BY COL1 ORDER BY COL2) 表示先根据COL1分组,在分组内部根据 COL2排序,而此函数计算的值就表示每组内部排序后的顺序编号(组内编号连续的唯一的)。
SELECT P.*,(ROW_NUMBER() OVER (PARTITION BY SQJZRYBH ORDER BY ID)) PX FROM MST_PAROLE P WHERE P.STEPID!='-1'
解释:以这个SQJZRYBH 分组,以ID升序排序,PX 为排序序号(从1开始自增)