下面是我对group by字句中with cube和with rollup的总结:group by进行分组。而在group by后面还可以加入with cube和with rollup等关键字对数据进行汇总。那什么时候用with cube?什么时候用with rollup呢
ROLLUP 运算符生成的结果集类似于 CUBE 运算符生成的结果集。下面是 CUBE 和 ROLLUP 之间的具体区别:CUBE 生成的结果集显示了所选列中值的所有组合的聚合。 ROLLUP 生成的结果集显示了所选列中值的某一层次结构的聚合。 ROLLUP 优点:(1)ROLLUP 返回单个结果集,而 COMPUTE BY 返回多个结果集,而多个结果集会增加应用程序代码的复杂性。 (2)ROLL
转载
2023-07-12 09:38:07
206阅读
rollup 是根据维度在数据结果集中进行的聚合操作。假设用户需要对N个维度进行聚合查询操作,普通的group by语句需要N个查询和N次group by操作。而rollup的优点是一次可以得出N次group by的结果,这样可以提高查询效率,同时大大减少网络的传输流量。如果是Group by ROLLUP(A, B, C)的话,首先会对(A、B、C)进行GROUP BY,然后对(A、
转载
精选
2016-02-22 18:19:21
5715阅读
cube和rollup的区分
原创
2019-05-30 14:30:19
4463阅读
点赞
rollup(字段1,字段2):cube(字段1,字段2):rollup(col1, col2,...) 和 cube(col1, col2,...) 用法区别在 cube 在 rollup 汇总
转载
精选
2011-04-26 20:04:53
9309阅读
在此使用oracle,oracle 中的用法为 group by [rollup|cube]( colomn),sql server中的用法为group by colomn with [rollup|cube] 首先要弄明白rollup 和cube,就要知道group by的用法,group by 为对列进行分组,只展现分组统计的值,而rollup 为分层次展现,cube为
目录1 函数概述2 函数分类2.1 内置函数分类2.1.1 String Functions 字符串函数2.1.2 Date Functions 日期函数2.1.4 Collection Functions 集合函数2.1.5 Conditional Functions 条件函数2.1.6 Type Conversion Functions 类型转换函数2.1.7 Data Masking Fun
ROLLUP,是GROUP BY子句的一种扩展,可以为每个分组返回小计记录以及为所有分组返回总计记录。CUBE,也是GROUP BY子句的一种扩展,可以返回每一个列组合的小计记录,同时在末尾加上总计记录。在文章的最后附上了相关表和记录创建的脚本。1、向ROLLUP传递一列SQL> select division_id,sum(salary) 2 from employees2 3 group
转载
精选
2013-10-30 11:17:44
674阅读
以下转自:http://blog.csdn.net/wanghai__/article/details/4817920作者:wh62592855ROLLUP,是GROUP BY子句的一种扩展,可以为每个分组返回小计记录以及为所有分组返回总计记录。CUBE,也是GROUP BY子句的一种扩展,可以返回每一个列组合的小计记录,同时在末尾加上总计记录。在文章的最后附上了相关表和记录创建的脚本。1、向RO
转载
精选
2014-02-11 08:13:01
165阅读
用SCOTT/TIGER登录。查询表EMP:都不用:SELECT JOB, DEPTNO, SUM(SAL) FROM EMP GROUP BY JOB, DEPTNO;结果:使用ROLLUP:SELECT JOB, DEPTNO,
原创
2023-04-26 19:56:08
295阅读
ROLLUP,是GROUP BY子句的一种扩展,可以为每个分组返回小计记录以及为所有分组返回总
转载
2022-06-15 15:34:10
130阅读
CREATETABLE#temp(nameVARCHAR(20),jobVARCHAR(20),ageINT,COUNTINT)INSERT#tempSELECT'周杰伦','歌手',25,2010UNIONALLSELECT'周杰伦','歌手',26,1444INSERT#tempSELECT'刘德华','演员',40,1101UNIONALLSELECT'刘德华','演员',45,4664IN...
转载
2010-11-10 23:11:00
230阅读
2评论
cube与rollup的异同
(1)、它们都有统计的作用
(2)、cube生成的结果集显示了所选列中值的所有组合的聚合
(3)、rollup生成的结果集显示了所选列中值的某一层次结构的聚合(只返回group by中第一个分组条件指定的列的统计行)
(4)cute的执行效率要低于rollup如图:cute为66%,rollup为34%
eg:
原创
2010-08-19 17:22:09
847阅读
关于Rollup 和 Cube的文章,网络上有很多,只要输入关键字随便到哪个搜索引擎都可以搜到大量的相关文章。比如这样几篇文章就不错:http://industry.ccidnet.com/pub/article/c1105_a79297_p1.htmlhttp://linux.ccidnet.com/pub/article/c322_a79386_p1.html使用方法:一般用在group by
原创
2023-09-18 09:35:44
65阅读
rollup/cube/grouping的使用
原创
2008-04-10 15:41:00
1890阅读
相信很多朋友都经常会使用Group By来进行数据的统计,本文介绍可能大家比较少用,但实际上有时候又很有用的三个Group By查询。1. group by all SQL Server联机丛书中是这样描述group by all的:“只有在 SELECT 语句还包括 WHERE 子句时,ALL 关键字才有意义。”也就是,group by all必须和where子句一起使用...
转载
2009-12-03 14:44:00
105阅读
2评论
Oracle的GROUP BY语句除了最基本的语法外,还支持ROLLUP和CUBE语句。如果是ROLLUP(A, B,
C)的话,首先会对(A、B、C)进行GROUP BY,然后对(A、B)进行GROUP BY,然后是(A)进行GROUP
BY,最后对全表进行GROUP BY操作。如果是GROUP BY CUBE(A, B, C),则首先会对(A、
转载
精选
2011-02-19 11:19:29
701阅读
cube 和 rollup我们知道grouping sets 可以按照我们定义的维度(grouping sets的参数)进行分组统计,就像下面我们定义的维度就是(school,grade),school,grade,(),也就是说我们定义的什么维度就是什么维度,例如我们这里定义了四个就是四个,定义了一个就是一个selectgrouping__id, nvl(school,'全年级'),nvl(gr
转载
2021-01-19 22:38:06
774阅读
2评论
1、rollup介绍:group by后带rollup子句的功能可以理解为:先按一定的规则产生多种分组,然后按各种分组统计数据。(至于统计出的数据是求和还是最大值还是平均值等这就取决于SELECT后的聚合函数)。 oracle中rollup和mysql的差不多,但比mysql的强大(mysql只有下面的第1和第2使用方式),且oracle中rollup可以和order by一起使用。具体使用如下:
原创
2022-06-16 06:50:20
476阅读
一、with rollup:with rollup 通常和group by 语句一起使用,是根据维度在分组的结果集中进行聚合操作。——对group by的分组进行汇总。假设用户需要对N个纬度进行聚合查询操作,普通的groupby语句需要N个查询和N次group by操作。而rollup的有点是一次可以去的N次groupby的结果,这样可以提高查询效率,同时大大减少网络的传输流量。1、r...
原创
2022-06-16 06:40:02
1517阅读