oracle rank dense_rank row_number函数

rank()函数主要用于排序,并给出序号
dense_rank():功能同rank()一样,区别在于,rank()对于排序并的数据给予相同序号,接下来的数据序号直接跳中跃,dense_rank()则不是,比如数据:
1,2,2,4,5,6.。。。。这是rank()的形式 
1,2,2,3,4,5,。。。这是dense_rank()的形式
1,2,3,4,5,6.。。。。。这是row_number()涵数形式
row_number()涵数则是按照顺序依次使用,相当于我们普通查询里的rownum值

如图所示:
select t.*,
rank() over(order by t.score desc) rank,
dense_rank() over(order by t.score desc) d_rank
from hello t

你可能感兴趣的:(oracle)