SQL DENSE_RANK和RANK的区别

avatar
作者
猴君
阅读量:0

在SQL中,DENSE_RANK和RANK是用来对结果集中的行进行排名的两个函数。它们的区别在于处理相同排名的情况上。

  • DENSE_RANK函数会给相同排名的行分配连续的排名,即如果有两行的得分相同,它们会被分配相同的排名,而后续行的排名会按照这个规则依次递增。比如,如果有两行得分都是第一名,那么它们的排名将都是1,而下一行的排名将是2。

  • RANK函数会给相同排名的行分配相同的排名,即如果有两行的得分相同,它们会被分配相同的排名,而后续行的排名会按照这个规则跳过相同排名的行数继续递增。比如,如果有两行得分都是第一名,那么它们的排名将都是1,而下一行的排名将是3。

总的来说,DENSE_RANK会得到更加连续的排名序列,而RANK会根据相同排名的行数跳过相应的排名。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!