在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

如何在Oracle中使用ROLLUP分组函数

162次阅读
没有评论

共计 1776 个字符,预计需要花费 5 分钟才能阅读完成。

自动写代码机器人,免费开通

这期内容当中丸趣 TV 小编将会给大家带来有关如何在 Oracle 中使用 ROLLUP 分组函数,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

环境准备

create table dept as select * from scott.dept;
create table emp as select * from scott.emp;

业务场景:求各部门的工资总和及其所有部门的工资总和

这里可以用 union 来做,先按部门统计工资之和,然后在统计全部部门的工资之和

select a.dname, sum(b.sal)
 from scott.dept a, scott.emp b
 where a.deptno = b.deptno
 group by a.dname
union all
select null, sum(b.sal)
 from scott.dept a, scott.emp b
 where a.deptno = b.deptno;

上面是用 union 来做,然后用 rollup 来做,语法更简单,而且性能更好

select a.dname, sum(b.sal)
 from scott.dept a, scott.emp b
 where a.deptno = b.deptno
 group by rollup(a.dname);

如何在 Oracle 中使用 ROLLUP 分组函数

业务场景:基于上面的统计,再加需求,现在要看看每个部门岗位对应的工资之和

select a.dname, b.job, sum(b.sal)
 from scott.dept a, scott.emp b
 where a.deptno = b.deptno
 group by a.dname, b.job
union all// 各部门的工资之和
select a.dname, null, sum(b.sal)
 from scott.dept a, scott.emp b
 where a.deptno = b.deptno
 group by a.dname
union all// 所有部门工资之和
select null, null, sum(b.sal)
 from scott.dept a, scott.emp b
 where a.deptno = b.deptno;

用 rollup 实现,语法更简单

select a.dname, b.job, sum(b.sal)
 from scott.dept a, scott.emp b
 where a.deptno = b.deptno
 group by rollup(a.dname, b.job);

如何在 Oracle 中使用 ROLLUP 分组函数

假如再加个时间统计的,可以用下面 sql:

select to_char(b.hiredate,  yyyy) hiredate, a.dname, b.job, sum(b.sal)
 from scott.dept a, scott.emp b
 where a.deptno = b.deptno
 group by rollup(to_char(b.hiredate,  yyyy), a.dname, b.job);

cube 函数

select a.dname, b.job, sum(b.sal)
 from scott.dept a, scott.emp b
 where a.deptno = b.deptno
 group by cube(a.dname, b.job);

如何在 Oracle 中使用 ROLLUP 分组函数cube

函数是维度更细的统计,语法和 rollup 类似

假设有 n 个维度,那么 rollup 会有 n 个聚合,cube 会有 2n 个聚合

rollup 统计列

rollup(a,b) 统计列包含:(a,b)、(a)、()

rollup(a,b,c) 统计列包含:(a,b,c)、(a,b)、(a)、()

….

cube 统计列

cube(a,b) 统计列包含:(a,b)、(a)、(b)、()

cube(a,b,c) 统计列包含:(a,b,c)、(a,b)、(a,c)、(b,c)、(a)、(b)、(c)、()

上述就是丸趣 TV 小编为大家分享的如何在 Oracle 中使用 ROLLUP 分组函数了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注丸趣 TV 行业资讯频道。

向 AI 问一下细节

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-04发表,共计1776字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 成av人片在线观看www | 成年丰满熟妇午夜免费视频 | 欧美狠狠入鲁的视频 | 亚洲免费视频一区 | 日日摸夜夜夜夜夜添 | 久久久久亚洲av无码a片软件 | 日本一级爽快片淫片高清特级 | 亚洲熟女乱色综合亚洲小说 | 免费被黄动漫网站在线观看下 | 深夜福利视频在线观看视频 | 福利精品视频 | 国产成人综合亚洲 | 国产成人精品福利网站人 | 少妇被粗大的猛烈进出69影院一 | 无码中文字幕日韩专区视频 | 亚洲国产精品尤物yw在线观看 | 99re热这里只有精品18 | 91精品网 | 午夜亚洲精品久久久久久 | 全免费a级毛片免费看视频免 | 天天se天天cao综合网蜜芽 | 青青青免费在线视频 | 亚洲五月六月丁香激情 | 国产大屁股喷水视频在线观看 | 国内精品久久久久影院优 | 国产又色又爽又黄刺激视频 | 自拍偷拍网 | 魔术学姐免费版观看 | 黑人巨茎大战俄罗斯美女 | 国内一级一级毛片a免费 | 美日韩一级| 性色xxx视频 | 欧美一区二区三区免费高 | 国内揄拍国内精品少妇国语 | 亚洲丰满熟女一区二区哦 | 亚洲精品无码不卡在线播放he | 精品水蜜桃久久久久久久 | 爱爱一区 | 国产伦一区二区三区高清 | 性生交大片免费看女人按摩 | 国产成人丝袜美女厕所视频 |