背景
客户需要针对用户的积分进行排名,按照积分的多少降序进行。为了更快更好的满足客户需求,就采取了SQL Server已有的排名函数RANK或DENSE_RANK来实现
RANK
返回结果集的分区内每行的排名。 行的排名是相关行之前的排名数加一。
ROW_NUMBER 和 RANK 类似。 ROW_NUMBER 按顺序对所有行进行编号(例如: 1、2、3、4、5)。 RANK 为相应关联提供相同的数值(例如: 1、2、2、4、5)。
RANK是运行查询时计算出的临时值
语法
RANK ( ) OVER ( [ partition_by_clause ] order_by_clause )
如果两个或多个行与一个排名关联,则每个关联行将得到相同的排名
DENSE_RANK
此函数返回结果集分区中每行的排名,排名值没有间断。...
3年前 (2022-04-06) 952℃ 0评论
3喜欢