dense_rank(),RANK()和row_number()是SQL中的排序函数。
 为方便后面的函数差异比对清晰直观,准备数据表如下:
 
 1.dense_rank() 函数语法:dense_rank() over( order by 列名 【desc/asc】)
 DENSE_RANK()是连续排序,比如遇到相同的数值时,排序时,是1 2 2 3 序号连续的。
 按照分数从高到低排名:
select name,score ,  dense_rank() over( order by score desc) from test.test001;

 按照分数从低到高排序:
 
2.RANK()函数语法:rank() over(order by 列名【desc/asc】)
 RANK()是不连续排序,比如遇到相同的数值时,排序时,是1 2 2 4 ,会跳过3。
 比如:
 
 3.row_number()函数语法:row_number() over(order by 列名) 【desc/asc】)
 row_number()是不考虑重复数据的,比如遇到相同的数值时,排序时,是1 2 3 4 ,依次排序。
 比如:
 