ORACLE-排序技巧ROW_NUM,ROW_NUMBER,RANK,DENSE_RANK,
来源:互联网 发布:修改照片的软件 编辑:程序博客网 时间:2024/06/10 13:41
1.row_number() over (partition by col_n[,col_m ...] order by col_1[,col_2 ...])
作用:先按照col_n[,col_m ...进行分组,
再在每个分组中按照col_1[,col_2 ...]进行排序(升序),最后返回排好序后的结果集
可以对每个分组内的行进行排序
利用这一特性可以:
①筛选重复数据
②筛选最新(最旧)数据
2.row_num 伪列
根据查询结果(取数据的时候)返回排序,因此只有有查询结果时才有row_num
①不能对row_num进行'>','>=',=(大于1)'的操作
②在使用ROWNUM时,只有当Order By的字段是主键时,查询结果才会先排序再计算ROWNUM;要注意使用order by时和rownum的先后顺序,会影响结果。
③可以取TOPN的数据
④可以进行分页查询操作
3.RANK() OVER(PARTITION BY col_1 ORDER BY col_2 DESC) 和 dense_rank()
rank返回并列数据并空出并列名次,dense_rank不空出并列名次
--rank: 1 2 2 4;dense_rank:1 2 2 3
0 0
- ORACLE-排序技巧ROW_NUM,ROW_NUMBER,RANK,DENSE_RANK,
- ORACLE Rank, Dense_rank, row_number
- Oracle:Rank,Dense_Rank,Row_Number比较
- Oracle笔记--row_number rank dense_rank
- Oracle分级排序函数Rank、Dense_Rank、Row_Number比较
- oracle的几个排序函数 ROW_NUMBER()/DENSE_RANK()/RANK()
- oracle笔记(5)----排序函数row_number、rank、dense_rank
- SQL排序 RANK/DENSE_RANK/ROW_NUMBER/NTILE
- MSSQL 排序函数 ROW_NUMBER() RANK() DENSE_RANK() NTILE()
- 关于函数row_number,rank,dense_rank排序
- Hive 分区排序 rank dense_rank row_number
- Oracle:分析函数2(Rank, Dense_rank, row_number)
- oracle分析函数(rank(),dense_rank(),row_number())
- oracle分析函数Rank, Dense_rank, row_number
- oracle 分析函数Rank, Dense_rank, row_number
- oracle分析函数Rank, Dense_rank, row_number
- oracle分析函数Rank, Dense_rank, row_number
- oracle分析函数Rank, Dense_rank, row_number
- Hiho coder: #1200 : Increase Charisma Points
- 换手均值
- POJ-1287-Networking(克鲁斯卡尔)
- 关于zip对文本进行压缩和解压
- 蓝牙4.0入门(2)开始程序编写(一)编写第一个亮灯程序
- ORACLE-排序技巧ROW_NUM,ROW_NUMBER,RANK,DENSE_RANK,
- 求二叉树的先序遍历
- web.xml配置加载顺序
- NODEJS MYSQL ASYNC 整合事务支持
- java反射机制—— 利用反射机制实例化对象
- 使用zlib库解压*.zip文件
- linux音频alsa驱动分析之三 解码器
- 开源ETL工具kettle系列之动态转换
- JS和JSP的区别