oracle分组排序几种情况总结

来源:互联网 发布:药店服务论文数据分析 编辑:程序博客网 时间:2024/06/18 12:14

分组排序:一组数据按col1分组,在每个组中再按col2排序。

相关函数:

1.row_number() over()

row_number() over(partition by col1 order by col2)表示根据col1分组,在分组内根据col2排序,此函数的计算值是每组内部排序后的顺序编号(组内连续且唯一)

例:1 

2

3

4

2.rank() over()

rank()是跳序排序,在同一个分组内有两个第二名时接下来就是第四名

例: 1 

1

3

3.dense_rank() over()

组内连续,但是有重复值,

例:1

1

2

3