代码测试如下:

SQL> select * from crm;

PARENTID CHILDRENID JTID JTNAME GX DISPLAYNAME JXRL LOATERATE

-------- ---------- ---- ------ -- ----------- ---- ---------

1          62   A集团  62 A嘉华            50

1        2          62   A集团  2  嘉华#3      600  0

1        3          62   A集团  2  嘉华#4           0

1        4          62   A集团  2  嘉华#5      300  0

5          62   A集团  62 A乐清煤电        50

5        6          62   A集团  3  乐清#1           50

5        7          62   A集团  3  乐清#2           0

8          62   A集团  62 A兰溪煤电        50

8        9          62   A集团  4  兰溪#1           0

8        10         62   A集团  4  兰溪#4      600  0

11         63   B集团  63 B玉环煤电        50

11       12         63   B集团  23 玉环#1           50

11       13         63   B集团  23 玉环#2           50

14         63   B集团  63 B长兴煤电        51

14       15         63   B集团  61 B长兴1#     100  51

14       16         63   B集团  61 B长兴2#     200  50

17         64   C集团  64 C乌山煤电        50

17       18         64   C集团  41 C乌山1#          50

17       19         64   C集团  41 C乌山2#          0

20         65   D集团  65 D半山煤电        0

20       21         65   D集团  25 半山#5           0

21 rows selected

SQL>

SQL>

SQL> select  JTID,

2          decode(grouping(CHILDRENID), 1, '合计', JTNAME) JTNAME,

3          GX,

4          DISPLAYNAME,

5          decode(ln, 1, sum(nvl(new_JXRL, 0)), sum(nvl(JXRL, 0))) JXRL,

6          decode(grouping(CHILDRENID), 1, (sum(decode(ln, 1, LOATERATE, 0)) / max(cnt)), sum(LOATERATE)) LOATERATE

7  from

8  (select ln,

9          grp,

10          CHILDRENID,

11          JTID,

12          JTNAME,

13          GX,

14          DISPLAYNAME,

15          JXRL,

16          decode(ln, 1, sum(nvl(JXRL, 0)) over(partition by grp), JXRL) new_JXRL,

17          LOATERATE,

18          count(distinct grp) over() cnt

19  from

20  (select level ln,

21          connect_by_root(CHILDRENID) grp,

22          CHILDRENID,

23          JTID,

24          JTNAME,

25          GX,

26          DISPLAYNAME,

27          JXRL,

28          LOATERATE

29     from crm

30    start with PARENTID is null

31    connect by prior CHILDRENID = PARENTID))

32  group by rollup((ln, grp, CHILDRENID, JTID, JTNAME, GX, DISPLAYNAME))

33  order by JTID, grp, ln;

JTID JTNAME GX DISPLAYNAME       JXRL  LOATERATE

---- ------ -- ----------- ---------- ----------

62   A集团  62 A嘉华              900         50

62   A集团  2  嘉华#5             300          0

62   A集团  2  嘉华#4               0          0

62   A集团  2  嘉华#3             600          0

62   A集团  62 A乐清煤电            0         50

62   A集团  3  乐清#1               0         50

62   A集团  3  乐清#2               0          0

62   A集团  62 A兰溪煤电          600         50

62   A集团  4  兰溪#4             600          0

62   A集团  4  兰溪#1               0          0

63   B集团  63 B玉环煤电            0         50

63   B集团  23 玉环#1               0         50

63   B集团  23 玉环#2               0         50

63   B集团  63 B长兴煤电          300         51

63   B集团  61 B长兴2#            200         50

63   B集团  61 B长兴1#            100         51

64   C集团  64 C乌山煤电            0         50

64   C集团  41 C乌山1#              0         50

64   C集团  41 C乌山2#              0          0

65   D集团  65 D半山煤电            0          0

65   D集团  25 半山#5               0          0

合计                        1800         43

22 rows selected

SQL>

oracle求部门请假类别合计_【大话IT】求oracle sql 写法,找出同类的合计,所有的总计...相关推荐

  1. oracle求部门请假类别合计_oracle数据库题目

    1.pctused,pctfree 表示什么含义,有什么作用 2.描述tablespace和datafile之间的关系 3.oracle数据库日志有哪几种模式,如何在不同模式中切换? 4.出现ORA- ...

  2. C语言习题:输入10个学生5门课的成绩,分别用函数求:①每个学生平均分;②每门课的平均分;③找出所有分数中最高分

    初学C语言,然后遇到一题: 输入10个学生5门课的成绩,分别用函数求:①每个学生平均分:②每门课的平均分:③找出所有分数中最高分 直接上代碼 注:自定义函数(xpj,kpj,maxj)我直接放在最前面 ...

  3. 2022-12-05:部门工资前三高的所有员工。编写一个SQL查询找出每个部门中收入前三高的员工 。 +------------+----------+--------+ | Department |

    2022-12-05:部门工资前三高的所有员工.编写一个SQL查询找出每个部门中收入前三高的员工 . ±-----------±---------±-------+ | Department | Em ...

  4. oracle存储查询出来的值_技术分享|浅析ORACLE数据库物理体系结构及其对应优化策略...

    张志国 合肥科技研发中心 Oracle数据库服务器有两个主要的组成部分:数据库和实例(instance).Oracle数据库用于存储和检索信息,是数据的集合.Oracle实例是指数据库服务器的内存及相 ...

  5. java 五个数字_关于java:五个任意整数找出其中第二大的数字

    package comxaqf.w02_objectoriented.a_saturday1030; import java.util.Scanner; /** [题6] 6.五个任意整数,找出其中第 ...

  6. c#求三角形面积周长公式_此题求三角形的面积,多数学生完全没思路,解题关键是用该知识点...

    大家好,今天是2020年7月27日星期一!数学世界继续给大家分享小学数学思考题,这道题要求的是三角形的面积,有一定的难度,仍属于能力提升题,但所用知识全部是学生应该掌握的内容.如果你是刚刚来到这里的新 ...

  7. c++求区间第k大数_数组中求第K大数的实现方法

    问题:有一个大小为n的数组A[0,1,2,-,n-1],求其中第k大的数. 该问题是一个经典的问题,在<算法导论>中被作为单独的一节提出,而且其解决方法很好的利用了分治的思想,将时间复杂度 ...

  8. window oracle 只有bak文件怎么恢复_一起来学习Oracle的备份恢复基础吧-4

    基于backup controlfile的恢复 使用备份的控制文件在实际工作中的两种情况: 当前控制文件全部损坏,而数据文件备份.控制文件备份及当前的日志处在不同的SCN版本,它们之间又增加过表空间( ...

  9. oracle实验六杨艳华_工作报告之oracle数据库实验报告

    oracle 数据库实验报告 [篇一:大型数据库 oracle 10g 实验教程实验五实验报 告] 集美大学计算机工程学院实验报告 课程名称: oracle 10g 数据库基础教程 指导教师:杨艳华 ...

最新文章

  1. Exynos 4412启动过程(群聊笔记记录)
  2. (二)双线性插值python实现
  3. java3d曲面图开发_web三维图表的开发
  4. python羊车门_羊车门 python 作业
  5. imutils.path
  6. php yat grpc,PHP GRPC 模块安装配置-Go语言中文社区
  7. 贪心----最优合并问题
  8. 你或许不知道SDP 但它能改变IaaS安全现状 - 2017.09.05
  9. poj 1386 欧拉回路
  10. oracle 游标详解
  11. 初级嵌入式软件工程师学习路线(在校本科或者硕士)
  12. 怎么用Python爬取抖音小视频? 资深程序员都这样爬取的(附源码)
  13. Spark的基本工作流程
  14. 【CV】国内外优秀的计算机视觉团队汇总|最新版
  15. 字符间距和文字效果(转)
  16. CANopen协议 学习笔记
  17. HTML+CSS实现基础课程表页面制作 (锚链接到页面下方课程详细信息)~小白入门版~
  18. 撤回的消息服务器还可以看到,微信消息被撤回,居然还能看到!原来还有11个你不知道...
  19. python流程图怎么画-Python使用graphviz画流程图过程解析
  20. 扫雷与算法:如何随机化的布雷(一)

热门文章

  1. 我常用的Markdown公式符号
  2. 讲讲数据分析中的同期群模型
  3. 如何利用Python批量将Word中的信息提取到Excel?
  4. SAP UI5 应用开发教程之三十四 - SAP UI5 应用基于设备类型的页面适配功能(Device Adaptation)试读版
  5. NgRx createSelector 工具函数的三个类型参数
  6. 使用SAP Analytics Cloud显示新冠肺炎病毒感染人数的实时信息
  7. SAP Cloud Platform integration上创建一个最简单的iFlow
  8. data-sap-ui-icon-content where does icon content come from
  9. simulation pipeline after change not refresh issue
  10. SAP UI5 Opportunity popup