窗口函数三种排序

排序窗口函数

dense_rank() over(order by Score desc) as 'Rank' 
rank() over(order by Score desc) as 'Rank'
row_number() over(order by Score desc) as 'Rank'

窗口函数三种排序_第1张图片
dense_rank()函数可以将排序按自上往下排,相同分数并列第一,下一个分数就是第二,不跳跃;
则两个分数排名(Rank)相同。平分后的下一个名次应该是下一个连续的整数值。换句话说,名次之间不应该有“间隔”。重复连续

rank() 函数将分数,则在名次之间有间隔,重复不连续

row_number() over (partition by col 1 order by col2 desc) as col_order eg:1,2,3,4,5,连续不重复

你可能感兴趣的:(mysql)