Oracle中over函数的经常使用示例

  • 电脑网络维修
  • 2024-11-14

Oracle中over函数的经常使用示例

sum(sal) over (partition by deptno order by ename) 部门延续求和,--各部门的薪水"延续"求和,

环境:windows 2000 server + Oracle8.1.7 + sql*plus

目标:以oracle自带的scott形式为测试环境,关键经过实验体会剖析函数的用法。

相似 sum(...) over ... 的经常使用

1.原表消息:

SQL> break on deptno skip 1 -- 为成果更显著,把不同部门的数据隔段显示。

SQL> select deptno,ename,sal

3 order by deptno;

DEPTNO ENAME SAL

10 CLARK 2450

MILLER 1300

20 SMITH 800

30 ALLEN 1600

MARTIN 1250

TURNER 1500

已选用14行。

2.先来一个便捷的,留意over(...)条件的不同,

经常使用 sum(sal) over (order by ename)... 查问员工的薪水“延续”求和,

留意over (order by ename)假设没有order by 子句,求和就不是“延续”的,

放在一同,体会一下不同之处:

SQL> break on '' -- 敞开数据分段显示

SQL> select deptno,ename,sal,

2 sum(sal) over (order by ename) 延续求和,

3 sum(sal) over () 总和, -- 此处sum(sal) over () 同等于sum(sal)

4 100*round(sal/sum(sal) over (),4) "份额(%)"

DEPTNO ENAME SAL 延续求和 总和 份额(%)

20 ADAMS 1100 1100 29025 3.79

30 ALLEN 1600 2700 29025 5.51

30 BLAKE 2850 5550 29025 9.82

10 CLARK 2450 8000 29025 8.44

20 FORD 3000 11000 29025 10.34

30 JAMES 950 11950 29025 3.27

20 JONES 2975 14925 29025 10.25

10 KING 5000 19925 29025 17.23

30 MARTIN 1250 21175 29025 4.31

10 MILLER 1300 22475 29025 4.48

20 SCOTT 3000 25475 29025 10.34

20 SMITH 800 26275 29025 2.76

30 TURNER 1500 27775 29025 5.17

30 WARD 1250 29025 29025 4.31

已选用14行。

3.经常使用子分区查出各部门薪水延续的总和。留意按部门分区。留意over(...)条件的不同,

sum(sal) over (partition by deptno order by ename) 按部门“延续”求总和

sum(sal) over (partition by deptno) 按部门求总和

sum(sal) over (order by deptno,ename) 不按部门“延续”求总和

sum(sal) over () 不按部门,求一切员工总和,成果同等于sum(sal)。

SQL> break on deptno skip 1 -- 为成果更显著,把不同部门的数据隔段显示。

SQL> select deptno,ename,sal,

2 sum(sal) over (partition by deptno order by ename) 部门延续求和,--各部门的薪水"延续"求和

3 sum(sal) over (partition by deptno) 部门总和, -- 部门统计的总和,同一部门总和不变

4 100*round(sal/sum(sal) over (partition by deptno),4) "部门份额(%)",

5 sum(sal) over (order by deptno,ename) 延续求和, --一切部门的薪水"延续"求和

6 sum(sal) over () 总和, -- 此处sum(sal) over () 同等于sum(sal),一切员工的薪水总和

7 100*round(sal/sum(sal) over (),4) "总份额(%)"

9 /【编辑介绍】

  • 关注微信

本网站的文章部分内容可能来源于网络和网友发布,仅供大家学习与参考,如有侵权,请联系站长进行删除处理,不代表本网站立场,转载联系作者并注明出处:https://duobeib.com/diannaowangluoweixiu/4378.html

猜你喜欢

热门标签

洗手盆如何疏浚梗塞 洗手盆为何梗塞 iPhone提价霸占4G市场等于原价8折 明码箱怎样设置明码锁 苏泊尔电饭锅保修多久 长城画龙G8253YN彩电输入指令画面变暗疑问检修 彩星彩电解除童锁方法大全 三星笔记本培修点上海 液晶显示器花屏培修视频 燃气热水器不热水要素 热水器不上班经常出现3种处置方法 无氟空调跟有氟空调有什么区别 norltz燃气热水器售后电话 大连站和大连北站哪个离周水子机场近 热水器显示屏亮显示温度不加热 铁猫牌保险箱高效开锁技巧 科技助力安保无忧 创维8R80 汽修 a1265和c3182是什么管 为什么电热水器不能即热 标致空调为什么不冷 神舟培修笔记本培修 dell1420内存更新 青岛自来水公司培修热线电话 包头美的洗衣机全国各市售后服务预定热线号码2024年修缮点降级 创维42k08rd更新 空调为什么运转异响 热水器为何会漏水 该如何处置 什么是可以自己处置的 重庆华帝售后电话 波轮洗衣机荡涤价格 鼎新热水器 留意了!不是水平疑问! 马桶产生了这5个现象 方便 极速 邢台空调移机电话上门服务 扬子空调缺点代码e4是什么疑问 宏基4736zG可以装置W11吗 奥克斯空调培修官方 为什么突然空调滴水很多 乐视s40air刷机包 未联络视的提高方向 官网培修 格力空调售后电话 皇明太阳能电话 看尚X55液晶电视进入工厂形式和软件更新方法 燃气热水器缺点代码

热门资讯

关注我们

微信公众号