Oracle 中实例详解ROW_NUMBER()用法
2013-08-12 14:25
302 查看
ROW_NUMBER()语法如下: 1、row_number() over(order by column desc)先对列column按照降序,再为每条记录返回一个序列号: SELECT D.*, ROW_NUMBER() OVER(ORDER BY D.R_OPATE_NUM DESC) AS INX FROM REPORT_DATA D
2、row_number() over(partition by column1 order by column2 asc) 先按照column1分组,再对分组后的数据进行以column2升序排列 select personalid,ct_smp_type,row_number() over(partition by personalid order by ct_smp_type asc) rn from neogoodsrule 语法1的具体实例:获取前100名人员的排名信息,如下
WITH REPORT_DATA AS (SELECT DW.DWID,DW.DWMC,JY.JYXM,JY.JH,RMPC.R_OPATE_NUM FROM REPORT_MONTH_PERSON_COUNT RMPC,JWT_JYXX JY,T_DWXX DW WHERE RMPC.JYID = JY.JYUSERID AND JY.SSDW = DW.DWID AND RMPC.R_YEAR = 2013 AND RMPC.R_MONTH = 6 AND JY.SSDW LIKE '4102%' ORDER BY RMPC.R_OPATE_NUM DESC) SELECT B.* FROM (SELECT D.*, ROW_NUMBER() OVER(ORDER BY D.R_OPATE_NUM DESC) AS INX FROM REPORT_DATA D ) B WHERE B.INX <=100 ORDER BY B.INX
相关文章推荐
- oracle merge into 的用法详解+实例
- 浅谈oracle中row_number() over()分析函数用法
- Oracle分析函数RANK()|ROW_NUMBER()|LAG()使用详解
- Oracle中row_number() over(partition by xxx order by xxx)的用法
- Oracle addBatch()用法实例详解
- Oracle中的row_number()用法
- Oracle:rownum和ROW_NUMBER()用法和误区
- 浅谈oracle中row_number() over()分析函数用法
- oracle 中的ROW_NUMBER() OVER() 的用法以及如何把空值转化指定值——记一次查询
- oracle 中的 ROW_NUMBER() OVER() 分析函数的用法(oracle去重方法)
- oracle中row_number()用法
- ORACLE 中的 ROW_NUMBER() OVER() 分析函数的用法
- Oracle Merge Into 的用法详解实例
- oracle 分组编号 ROW_NUMBER() OVER(PARTITION BY COLUMN ORDER BY COLUMN ) 的用法
- oracle row_number() 函数的基本用法用法
- Oracle group by 用法实例详解
- oracle的“over partition by”的用法,over不能单独使用,要和分析函数:rank(),dense_rank(),row_number()等一起使用。
- oracle ROW_NUMBER() OVER( PARTITION BY COL1 ORDER BY COL2)用法(含lag lead用法)
- 记录---ORACLE 中的 ROW_NUMBER() OVER() 分析函数的用法
- oracle row_number()函数的小实例