Oracle:grouping和rollup
Oracle grouping和rollup简单测试
- SQL> select department_id,sum(salary) from employees where department_id in(10,30,90,100) group by department_id order by department_id;
- DEPARTMENT_ID SUM(SALARY)
- ------------- -----------
- 10 4400
- 30 24900
- 90 58000
- 100 51608
- SQL> select department_id,first_name,sum(salary) from employees where department_id in(10,30,90,100) group by (department_id,first_name) order by department_id;
- DEPARTMENT_ID FIRST_NAME SUM(SALARY)
- ------------- -------------------- -----------
- 10 Jennifer 4400
- 30 Alexander 3100
- 30 Den 11000
- 30 Guy 2600
- 30 Karen 2500
- 30 Shelli 2900
- 30 Sigal 2800
- 90 Lex 17000
- 90 Neena 17000
- 90 Steven 24000
- 100 Daniel 9000
- 100 Ismael 7700
- 100 John 8200
- 100 Jose Manuel 7800
- 100 Luis 6900
- 100 Nancy 12008
- 16 rows selected
- SQL> select department_id,first_name,sum(salary) from employees where department_id in(10,30,90,100) group by rollup(department_id,first_name) order by department_id;
- DEPARTMENT_ID FIRST_NAME SUM(SALARY)
- ------------- -------------------- -----------
- 10 Jennifer 4400
- 10 4400
- 30 Alexander 3100
- 30 Den 11000
- 30 Guy 2600
- 30 Karen 2500
- 30 Shelli 2900
- 30 Sigal 2800
- 30 24900
- 90 Lex 17000
- 90 Neena 17000
- 90 Steven 24000
- 90 58000
- 100 Daniel 9000
- 100 Ismael 7700
- 100 John 8200
- 100 Jose Manuel 7800
- 100 Luis 6900
- 100 Nancy 12008
- 100 51608
- DEPARTMENT_ID FIRST_NAME SUM(SALARY)
- ------------- -------------------- -----------
- 138908
- 21 rows selected
- SQL> select department_id,grouping(department_id),first_name,grouping(first_name),sum(salary) from employees where department_id in(10,30,90,100) group by rollup(department_id,first_name) order by department_id;
- DEPARTMENT_ID GROUPING(DEPARTMENT_ID) FIRST_NAME GROUPING(FIRST_NAME) SUM(SALARY)
- ------------- ----------------------- -------------------- -------------------- -----------
- 10 0 Jennifer 0 4400
- 10 0 1 4400
- 30 0 Alexander 0 3100
- 30 0 Den 0 11000
- 30 0 Guy 0 2600
- 30 0 Karen 0 2500
- 30 0 Shelli 0 2900
- 30 0 Sigal 0 2800
- 30 0 1 24900
- 90 0 Lex 0 17000
- 90 0 Neena 0 17000
- 90 0 Steven 0 24000
- 90 0 1 58000
- 100 0 Daniel 0 9000
- 100 0 Ismael 0 7700
- 100 0 John 0 8200
- 100 0 Jose Manuel 0 7800
- 100 0 Luis 0 6900
- 100 0 Nancy 0 12008
- 100 0 1 51608
- DEPARTMENT_ID GROUPING(DEPARTMENT_ID) FIRST_NAME GROUPING(FIRST_NAME) SUM(SALARY)
- ------------- ----------------------- -------------------- -------------------- -----------
- 1 1 138908
- 21 rows selected
rollup为按分组统计小计和。
grouping(department_id)和grouping(first_name)
如果当前列所在的行为空,则显示为1,不为空则显示为0;
Oracle:grouping和rollup的更多相关文章
- Oracle分析函数 — sum, rollup, cube, grouping用法
本文通过例子展示sum, rollup, cube, grouping的用法. //首先建score表 create table score( class nvarchar2(20), course ...
- SQL GROUP BY GROUPING SETS,ROLLUP,CUBE(需求举例)
实现按照不同级别分组统计 关于GROUP BY 中的GROUPING SETS,ROLLUP,CUBE 从需求的角度理解会更加容易些. 需求举例: 假如一所学校只有两个系, 每个系有两个专业, 每个专 ...
- oracle group by rollup,decode,grouping,nvl,nvl2,nullif,grouping_id,group_id,grouping sets,RATIO_TO
干oracle 047文章12当问题,经验group by 声明.因此邂逅group by rollup,decode,grouping,nvl,nvl2,nullif,RATIO_TO_REPOR ...
- Oracle Group by+rollup+cube 的应用
首先我们创建一个示例表: Create table test_group (v_name varchar2(4) ,v_size varchar2(4) ,v_color varchar2(4) ,n ...
- 【Teradata】grouping和rollup窗口函数
1.group by后带rollup子句 先按一定的规则产生多种分组,然后返回各个分组所产生的结果集的并集,且没有去掉重复数据(统计出的数据是求和还是最大值还是平均值等这就取决于SELECT后的聚合函 ...
- Hive高级聚合GROUPING SETS,ROLLUP以及CUBE
scala> import org.apache.spark.sql.hive.HiveContextimport org.apache.spark.sql.hive.HiveContext s ...
- (2.4)DDL增强功能-数据汇总grouping、rollup、cube
参考:https://www.cnblogs.com/nikyxxx/archive/2012/11/27/2791001.html 1.rollup (1)rollup在group by 子句中使用 ...
- MS SQL 分类汇总参数 grouping(**)=1 rollup cubt
转:http://www.111cn.net/database/mssqlserver/43368.htm 本文章介绍了关于sql多级分类汇总实现方法及数据结构,有碰到问题的同学可参考一下. 据库结构 ...
- oracle GROUP BY rollup
1.ROW_NUMBER() OVER函数的基本用法用法 http://www.cnblogs.com/fxgachiever/archive/2010/09/15/1826792.html 2.De ...
随机推荐
- 安装centos6.3
废话少说,今天安装镜像文件.版本为centos6.3 1.首先,我们已经创建了一个空的虚拟机,此时,打开虚拟机,选择的镜像文件,点击ok自己下载 2.点击绿色的三角箭头,你会看到下面页面.(如果报错T ...
- CSS结构伪类E:first-child/last-child/only-child/empty
E:first-child解释:E的父元素的第一个子元素正好是E,给这个E定义样式 E:last-child解释:E的父元素的最后一个子元素正好是E,给这个E定义样式 E:only-child解释:E ...
- eclipse 404以及tomcat failed to start错误
eclipse中的servlet项目有时会不编译,不编译可能就会出现404错误,因为在build path的输出目录并没有class文件,然而如果在输出目录引入之前编译的class文件,就可能出现cl ...
- CODEVS 3139 栈练习3
3139 栈练习3 时间限制: 2 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 比起第一题,本题加了另外一个操作,访问栈顶元素(编号3,保 ...
- asp.net FileUpload 控件上传文件 以二进制的形式存入数据库并将图片显示出来
图片上传事件代码如下所示: byte[] binary = upload.FileBytes; StringBuilder sqlStrSb = new StringBuilder(); sqlStr ...
- Ajax中send方法参数的使用
一般情况下,使用Ajax提交的参数多是些简单的字符串,可以直接使用GET方法将要提交的参数写到open方法的url参数中,此时send方法的参数为null. 例如 : var url = " ...
- Front end workflow
标签:请叫我红领巾 记一哈记一哈 ^_^ 推荐个不错的群 自己刚开始折腾的时候也是无处下手,渺茫啊.然而我是有一个很好的前端群(真的很棒,欢迎加入:[375042952]),关注群里的每一次讨论,每一 ...
- 更快的方式实现PHP数组去重(转)
概述 使用PHP的array_unique()函数允许你传递一个数组,然后移除重复的值,返回一个拥有唯一值的数组.这个函数大多数情况下都能工作得很好.但是,如果你尝试在一个大的数组里使用array_u ...
- linux 文件查找和压缩工具
文件查找 1,which命行查找可执行文件,which 只会搜索系统$PATH目录 2,whereis,查找可执行文件,并显示出此文件的man page文件,并且可以查找到系统的库目录 3,locat ...
- 利用程序将.jrxml导出为.jasper文件并用PDF显示(2)
直接在Web项目中使用.jasper文件,其实在软件项目开发时,.jrxml文件经常修改,而且.jrxml还要在项目中进行保留备份,所以较为流行的做法是在项目中使用.jrxml来生成.jasper文件 ...