-- 分析函数 rank()、dense_rank()、row_number()
以下三个分析函数可以用于排名使用。
下图为三种排名方式的举例
-- 值相同,排名相同,序号跳跃
对 T_ACCOUNT 表的 usenum 字段进行排序,相同的值排名相同,排名跳跃
select rank() over(order by usenum desc ),usenum from T_ACCOUNT
结果如下:
-- 值相同,排名相同,序号连续
对 T_ACCOUNT 表的 usenum 字段进行排序,相同的值排名相同,排名连续
select dense_rank() over(order by usenum desc ),usenum from T_ACCOUNT
结果如下图:
-- 值相同,排名不同,序号连续
对 T_ACCOUNT 表的 usenum 字段进行排序,返回连续的排名,无论值是否相等
select row_number() over(order by usenum desc ),usenum from T_ACCOUNT
结果如下图: