首页 > 代码库 > SQL PARTITION BY:列值改变时重置计数

SQL PARTITION BY:列值改变时重置计数

现有数据如下:

技术分享

需求:以科目为单位 对分数进行排序

技术分享
1   SELECT *, ROW_NUMBER() OVER (PARTITION BY 科目 ORDER BY 分数 DESC) AS NUM FROM Table_A
View Code

结果如下:

技术分享

PARTITION BY: 告诉Row_NUMBER函数在列(或列组合)改变值时重置计数

SQL PARTITION BY:列值改变时重置计数