整理以自用
对比 dense_rank , rank , row_number 三个排名函数
先看一下样表score
代码如下:
select score,
-- dense_rank 函数同分值按照一个排名,后面的排名也是连续的
DENSE_RANK() over(order by score desc) as 'dense_rank',
-- rank 函数同分值按照同一排名,后面的排名会空出前面同一排名的数量
RANK() over(order by score desc) as 'rank',
-- row_number 函数排名结果是连续的,同一分值按照顺序依次排名而下
ROW_NUMBER() over(order by score desc) as 'row_number'
from score
结果: