语法:ROW_NUMBER() OVER(PARTITION BY COLUMN ORDER BY COLUMN)
简单的说row_number()从1开始,为每一条分组记录返回一个数字,这里的ROW_NUMBER() OVER (ORDER BY xlh DESC) 是先把xlh列降序,再为降序以后的没条xlh记录返回一个序号。
需求:根据部门分组,显示每个部门的工资等级
预期结果:
empid deptid salary rank
----------- ----------- --------------------------------------- --------------------
1 10 5500.00 1
2 10 4500.00 2
4 20 4800.00 1
3 20 1900.00 2
7 40 44500.00 1
6 40 14500.00 2
5 40 6500.00 3
9 50 7500.00 1
8 50 6500.00 2
案例:结合
select c_line_sn,d_arrive_time,d_leave_time ,ROW_NUMBER() over(partition by c_line_sn order by d_arrive_time) ranks,
lag(d_leave_time,1) over (partition by c_line_sn order by d_arrive_time)
from task_record
where d_arrive_time>=to_date('2013-01-02 01:02:03','YYYY-MM-DD HH:Mi:ss');
--------获取当前日期判断
select trunc(sysdate,'dd') from dual
相关推荐
Oracle中分组后拼接分组字符串.pdf
Oracle中分组后拼接分组字符串[文].pdf
oracle笔记分组函数,涉及组函数案例,在使用组函数的过程中注意事项,有具体的案例说明!
Oracle分组统计
Oracle数据库使用分组函数来对数据进行聚集
ORACLE INSERT INTO SELECT *FROM 分批提交例子
oracle如何实现分组排序和统计、聚集,如何分组求top N,什么是over分析函数,row_number(),rank(),dense_rank()区别又是什么, 如何找到一条记录的前后值,这份文档写得太好了。
oracle 分组函数 一看就知道,包括了 最常用的 分组函数,
李兴华老师ORACLE数据库,分组统计和子查询专题深入详解
一些關于orcle內嵌的函數和分組,如日期,字答處理(to_char, decode()....)
NULL 博文链接:https://wangjingyi.iteye.com/blog/1545090
oracle的分组函数的概述,以及详细的介绍
oracle分组查询数据 select BFMBIGNAME,projectaddress,BFMSMALLNAME from(select BFMBIGNAME,projectaddress,BFMSMALLNAME,row_number() over (partition by BFMBIGNAME order by REGISTERDATE) id from Project...
使用GROUP BY语句时,你一般得不到多级总数。可以用GROUP BY GROUPING SETS来代替GROUP BY CUBE。你可以应用来指定你感兴趣的总数组合。因为它不必计算它不需要集合(也不会产生太多结果),所以对SQL引擎来说更为...
本博客简单介绍一下oracle分组函数之rollup的用法,rollup函数常用于分组统计,也是属于oracle分析函数的一种 环境准备 create table dept as select * from scott.dept; create table emp as select * from ...
oracle 存储过程批量提交
主要介绍了Oracle数据库按时间进行分组统计数据的方法,同时附带了一个在不同时间段内的统计实现,需要的朋友可以参考下
互联网集团出题,能做出这些题,就说明掌握了分组查询的知识点
博客http://blog.csdn.net/imlanbin/article/details/48730143 所用的数据库