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及常用窗口函数的相关知识就介绍到这里了,希望本次的介绍能够对您有所收获!
Oready即为“One Technology Ready”!
Oready不仅仅是数据库领域的专家,同时也是一个社区,我们汇集百位数据库领域资深顾问、讲师,服务于数据中心的技术支持与技能传授,注重对客户的关键数据库运营支撑,强调经验的分享-Skill Transfer,聚焦数据中心的完美结合.