首页 > 试题广场 >

以下哪一种排序函数会形成“1,2,2,4,5,5

[单选题]
以下哪一种排序函数会形成“1,2,2,4,5,5,7”的排序结果?
  • Rank()
  • DENSE_RANK()
  • ROW_NUMBER()
  • 全部错误
1.row_number
row_number在排名时序号 连续 不重复,即使遇到表中的两个3时亦如此

执行
select row_number() OVER(order by e.salary desc) as row_num , e.salary
from employee e
结果如图


2.rank
rank函数会把要求排序的值相同的归为一组且每组序号一样,排序不会连续
执行
select rank() OVER(order by e.salary desc) as row_num , e.salary
from employee e
结果:

3.dense_rank
dense_rank排序是连续的,也会把相同的值分为一组且每组排序号一样

执行
select dense_rank() OVER(order by e.salary desc) as row_num , e.salary
from employee e
结果:


发表于 2020-02-11 16:55:28 回复(1)