oracle中cube的作用,Oraclerollup和cube分析
Oraclerollup和cube分析
rollup是对group by的扩展,会进行小计和合计,而cube包含rollup,是粒度更精细的小计和合计。当只有一个字段时,rollup和cube是一样的。 可用grouping对rollup和cube进行测试:0看;1不看[看表示列有显示,不看表示没有显示] ① rollup ㈠ 什么都不看 ㈡ 从
rollup是对group by的扩展,会进行小计和合计,而cube包含rollup,是粒度更精细的小计和合计。当只有一个字段时,rollup和cube是一样的。
可用grouping对rollup和cube进行测试:0看;1不看[看表示列有显示,不看表示没有显示]
① rollup
㈠ 什么都不看
㈡ 从左往右
-
┌ 先看第1个
│ 再看前2个
└ 后看前3个
② cube:0、1全排列
rollup
rollup后面指定的列以逗号分隔,rollup的计算结果和其后面指定的列的顺序有关,因为rollup的分组具有方向性。若指定n列,则有n+1种分组方式。可改变列的顺序,达到不同的业务需求。一定要牢记列的顺序对结果的影响!
例子:
1.20:32:51 scott@ORCL (^ω^) select a.dname,b.job,sum(b.sal) sum_sal,grouping(a.dname),grouping(b.job)
2.20:33:06 2 from dept a,emp b
3.20:33:06 3 where a.deptno=b.deptno
4.20:33:06 4 group by rollup(a.dname,b.job)
5.20:33:08 5 /
6.
7.DNAME JOB SUM_SAL GROUPING(A.DNAME) GROUPING(B.JOB)
8.---------- ---------- ---------- ----------------- ---------------
9.SALES CLERK 950 0 0
10.SALES MANAGER 2850 0 0
11.SALES SALESMAN 5600 0 0
12.SALES 9400 0 1
13.RESEARCH CLERK 1200 0 0
14.RESEARCH ANALYST 7000 0 0
15.RESEARCH MANAGER 2975 0 0
16.RESEARCH 11175 0 1
17.ACCOUNTING CLERK 1300 0 0
18.ACCOUNTING MANAGER 2450 0 0
19.ACCOUNTING PRESIDENT 5000 0 0
20.ACCOUNTING 8750 0 1
21. 29325 1 1
22.
23.已选择13行。
解释:什么都不看(1,1);从左往右,先看第一个(0,1)
可以将不需要进行小计和合计的列移出rollup,要小计的留在rollup里面。
比如:
1.20:48:37 scott@ORCL (^ω^) select a.dname,b.job,sum(b.sal) sum_sal,grouping(a.dname),grouping(b.job)
2.20:57:43 2 from dept a,emp b
3.20:57:43 3 where a.deptno=b.deptno
4.20:57:43 4 group by a.dname,rollup(b.job)
5.20:57:45 5 /
6.
7.DNAME JOB SUM_SAL GROUPING(A.DNAME) GROUPING(B.JOB)
8.---------------------------- ------------------ ---------- ----------------- ---------------
9.SALES CLERK 950 0 0
10.SALES MANAGER 2850 0 0
11.SALES SALESMAN 5600 0 0
12.SALES 9400 0 1
13.RESEARCH CLERK 1200 0 0
14.RESEARCH ANALYST 7000 0 0
15.RESEARCH MANAGER 2975 0 0
16.RESEARCH 11175 0 1
17.ACCOUNTING CLERK 1300 0 0
18.ACCOUNTING MANAGER 2450 0 0
19.ACCOUNTING PRESIDENT 5000 0 0
20.ACCOUNTING 8750 0 1
21.
22.已选择12行。
本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉
本文系统来源:php中文网
oracle中cube的作用,Oraclerollup和cube分析相关推荐
- oracle下的inventory文件夹,Oracle中Inventory目录作用以及如何重建此目录
Oracle中Inventory目录作用以及如何重建此目录 oraInventory存放的是Oracle软件安装的目录信息,Oralce的安装升级都需要用到这个目录,来看看Oracle文档中对这个目录 ...
- oracle重建inventory,Oracle中Inventory目录作用以及如何重建此目录-Oracle
Oracle中Inventory目录作用以及如何重建此目录 oraInventory存放的是Oracle软件安装的目录信息,Oralce的安装升级都需要用到这个目录,来看看Oracle文档中对这个目录 ...
- oracle 中触发器的作用是什么,oracle创建触发器及作用举例
--创建触发器及作用举例 create or replace trigger tri before delete on emp --在删除emp表数据之前需要做的事根据自己的业务去写,before是在 ...
- oracle中redo的作用,深入浅出Oracle:Redo的作用
Oracle通过Redo来保证数据库的事务可以被重演,从而使得在故障之后,数据可以被恢复.Redo对于Oracle数据库来说至关重要. 在数据库中,Redo的功能主要通过3个组件来实现:Redo Lo ...
- 技术分享 oracle中fm的作用
SQL> select '|'||to_char(5,'999')||'|' from dual; 结果为:| 5| SQL> select '|'||to_char(5,'000')|| ...
- oracle中tns作用,Oracle 中TNS的作用
什么是TNS? TNS是Oracle Net的一部分,专门用来管理和配置Oracle数据库和客户端连接的一个工具,在大多数情况下客户端和数据库要通讯,必须配置TNS,当然在少数情况下,不用配置TNS也 ...
- oracle中同义词的作用,Oracle中使用同义词
一.背景 有两个sid:Asid,Bsid,在Asid下有两个用户Auser1,Auser2,在Bsid下有一个用户Buser1.其中Auser2和Buser1建立了dblink.现希望通过登录Bus ...
- Oracle中的各种NAME
Oracle的Name分类 我们知道,Oracle中的各种NAME会在我们的各个配置文件中经常出现,大致有以下这些: 在init.ora中有DB_NAME,INSTANCE_NAME,SERVICE_ ...
- Oracle中SID INSTANCE_NAME Service_Name DB_Name等的介绍
Oracle中SID INSTANCE_NAME Service_Name DB_Name等的介绍 在Oracle数据库中有SID.Service_Name.TNS_Name.DBName等名称,估计 ...
- oracle group by 两项,Oracle中group by 的扩展函数rollup、cube、grouping sets
Oracle的group by除了基本使用方法以外,还有3种扩展使用方法,各自是rollup.cube.grouping sets.分别介绍例如以下: 1.rollup 对数据库表emp.如果当中两个 ...
最新文章
- activiti监听器使用
- Beetlex之tcp/tls服务压测工具
- UnrealEngine4 - 关于UObject被自动GC垃圾回收的巨坑
- SpringBoot:Unable to start LiveReload server(已解决)
- IOS APP 上传到AppStore
- Python 辛普森积分法 simps计算sin(x)的值(完美实现)
- 反向题在测试问卷信效度_问卷的信度与效度
- CAN网络矩阵详解,摩托罗拉(Motorala)大端序,英特尔(Intel)小端序
- 首届InterSystems Idea创意马拉松
- 什么是微信分销商城?
- (安卓免费抓包软件)安卓7以上版本微信内部无法抓包的完美解决方案
- “云原生”技术公开课第3章:Kubernetes 核心概念
- 邮箱发信数量被限制了,有什么方法可以解决么?
- ubuntu为软件设定图标
- JAVA毕业设计花卉网站计算机源码+lw文档+系统+调试部署+数据库
- C#:查找文件所在位置
- 微信html5图片裁切,微信小程序图片裁剪工具we-cropper
- Vue-cli使用prerender-spa-plugin插件预渲染的问题
- 如何写好一份解决方案?
- conda虚拟环境常见操作