Oracle数据库用DECODE实现行列转换以及常用窗口函数的相关知识是本文我们主要要介绍的内容,希望本次的介绍能够对您有所收获!
利用DECODE进行行列转换
代码如下:
- select '工资' 部门,
- sum(decode(k.deptno,'10',k.g)) A
- ,sum(decode(k.deptno,'20',k.g)) B
- ,sum(decode(k.deptno,'30',k.g)) C
- ,sum(decode(k.deptno,'40',k.g)) D
- from (select sum(e.sal) g,e.deptno from emp e
- left join dept d on d.deptno=e.empno
- group by e.deptno) k;
Oracle 窗口函数
- rank() over(order by emp_age)
- dense_rank() over(order by emp_age)
- row_number() over(order by emp_age)
- avg(age) over(partition by position) avg
- sum(age) over(order by age rows between 1 preceding and 1 following)--获取当前记录的前一行以及后一行
- count(1) over(order by age range between 1 preceding and 1 following) c--差在一岁的数据。
关于Oracle数据库DECODE及常用窗口函数的相关知识就介绍到这里了,希望本次的介绍能够对您有所收获!
【编辑推荐】
- 如何用SAS宏实现Oracle中的decode函数?
- Oracle数据库日期范围查询的两种实现方式
- Oracle数据库只读模式的CACHE BUFFERS CHAINS测试
- Oracle 10g数据库中UNDO_RETENTION参数的使用详解
- Oracle 10g默认归档路径在闪回区的2G空间大小限制问题
文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/249398.html<

