RollUp是上卷功能,类似于数据挖掘中的上卷操作。
ROLLUp的功能和Order by功能是互斥的。
mysql> SELECT year,
SUM(profit) FROM sales GROUP BY year;
+------+-------------+
| year | SUM(profit) |
+------+-------------+
| 2000 | 4525 |
| 2001 | 3010
|
+------+-------------+
mysql> SELECT year,
SUM(profit) FROM sales GROUP BY year WITH ROLLUP;
+------+-------------+
| year | SUM(profit) |
+------+-------------+
| 2000 | 4525 |
| 2001 | 3010 |
| NULL | 7535 |
+------+-------------+
mysql> SELECT year,
country, product, SUM(profit)
-> FROM sales
-> GROUP BY year, country, product;
+------+---------+------------+-------------+
| year | country | product |
SUM(profit) |
+------+---------+------------+-------------+
| 2000 | Finland | Computer | 1500 |
| 2000 | Finland | Phone | 100 |
| 2000 | India | Calculator | 150 |
| 2000 | India | Computer |
1200 |
| 2000 | USA | Calculator | 75 |
| 2000 | USA | Computer |
1500 |
| 2001 | Finland | Phone | 10 |
| 2001 | USA | Calculator | 50 |
| 2001 | USA | Computer |
2700 |
| 2001 | USA | TV | 250
|
+------+---------+------------+-------------+
mysql> SELECT year,
country, product, SUM(profit)
-> FROM sales
-> GROUP BY year, country, product WITH ROLLUP;
+------+---------+------------+-------------+
| year | country | product |
SUM(profit) |
+------+---------+------------+-------------+
| 2000 | Finland | Computer | 1500 |
| 2000 | Finland | Phone | 100 |
| 2000 |
Finland | NULL | 1600 |
| 2000 | India | Calculator | 150 |
| 2000 | India | Computer |
1200 |
| 2000 |
India | NULL |
1350 |
| 2000 | USA | Calculator | 75 |
| 2000 | USA | Computer |
1500 |
| 2000 | USA | NULL |
1575 |
| 2000 | NULL | NULL |
4525 |
| 2001 | Finland | Phone | 10 |
| 2001 | Finland | NULL | 10 |
| 2001 | USA | Calculator | 50 |
| 2001 | USA | Computer |
2700 |
| 2001 | USA | TV | 250 |
| 2001 | USA | NULL |
3000 |
| 2001 | NULL | NULL |
3010 |
| NULL | NULL | NULL |
7535 |
+------+---------+------------+-------------+
分享到:
相关推荐
`CUBE`和`ROLLUP`是`WITH`子句中的两个特殊运算符,它们主要用于多维度数据分析和聚合操作,通常在`GROUP BY`语句中配合使用。 1. **CUBE运算符**: `CUBE`生成的结果集包含了所有可能的子集,即所选列中值的所有...
MySQL 5.1版本继续扩展数据库的功能。它引入了事件调度器(Event Scheduler),使数据库能够根据设定的计划自动执行任务。此外,数据库分区(Partitioning)功能的加入进一步提升了对大数据处理的能力。同时,增加了...
通过以上内容的学习,我们可以看到`ROLLUP`函数在生成报表时的强大功能,特别是当需要同时展示多个级别的汇总信息时。此外,结合使用`GROUPING_ID`函数还可以使结果更加清晰易读。这为我们在日常工作中处理类似问题...
`GROUP BY`语句是实现这一目标的关键,而`WITH ROLLUP`是扩展这个功能的一种方法,特别适用于生成带有层次结构的小计和总计的报表。 `GROUP BY`语句用于将数据行分组成多个组,每个组由共享相同列值的行组成。例如...
这时,WITH ROLLUP运算符就派上了用场。 WITH ROLLUP是SQL Server提供的一种高级分组方法,它允许你在查询结果中生成类似Excel透视表的层次结构汇总。当你在GROUP BY子句中使用WITH ROLLUP时,它不仅会按照指定的列...
MySQL 4.1是2004年发布的一个主要版本,引入了诸多新功能,包括增强的SQL支持,如窗口函数和WITH ROLLUP,改进的查询优化器,以及对大型数据集的支持。此外,4.1版本还增强了存储过程、触发器和视图的功能,提高了...
但是,如果我们想要对分组结果进行汇总统计时,使用 `ROLLUP` 子句可以实现这一功能。 ROLLUP 子句的作用 `ROLLUP` 子句可以在 `GROUP BY` 语句中使用,用于对分组结果进行汇总统计。它可以产生多种分组,然后对...
group by 属性名 [having 条件表达式][ with rollup] “属性名 ”指按照该字段值进行分组;“having 条件表达式 ”用来限制分组后的显示,满足条件的结果将被显示;with rollup 将会在所有记录的最后加上一条记录,...
使用WITH ROLLUP:在group分组字段的基础上进行统计数据。 函数COALESCE(expression_1,…,expression_n)依次参考各参数表达式,遇到非null值即停止并返回该值。如果所有的表达式都是空值,最终将返回一个空值。 代码...
rollup函数 本博客简单介绍一下oracle分组函数之rollup的用法,rollup函数常用于分组统计,也是属于oracle分析函数的一种 环境准备 create table dept as select * from scott.dept; create table emp as select...
### MySQL培训课件知识点梳理 #### 一、MySQL概述 ...以上知识点涵盖了MySQL的基本概念、特点优势、不同版本的区别以及各版本的新功能介绍等内容,旨在帮助学习者全面了解MySQL,并掌握其核心功能和应用场景。
- MySQL 4.1版本增加了子查询支持、字符集UTF-8、GROUP BY语句的ROLLUP功能以及mysql.user表更好的加密算法。 - MySQL 5.0版本增加了存储过程、视图、游标、触发器、XA事务支持和INFORMATION_SCHEMA系统数据库。 - ...
例如,如果在 `GROUP BY` 语句后面指定了两个列 `column1` 和 `column2`,那么 `WITH ROLLUP` 将会产生以下几类分组: 1. 按 `column1` 和 `column2` 进行分组。 2. 按 `column1` 进行分组(忽略 `column2`)。 3. ...
SQL Server中的用法为group by colomn with [rollup|cube],首先要弄明白rollup 和cube,就要知道group by的用法,group by 为对列进行分组,只展现分组统计的值,而 rollup 为分层次展现,cube 为展现列中所有层次...
Rollup-Loader是一款基于Rollup的加载器,它扩展了Rollup的功能,使得Rollup能够处理更复杂的项目构建需求,与Webpack等其他构建工具相媲美。 Rollup是一款模块打包工具,以其独特的"树摇"(Tree Shaking)优化而...
我们导入了三个常用的Rollup插件:`rollup-plugin-node-resolve`用于解析非相对模块,`rollup-plugin-commonjs`处理CommonJS模块,而`rollup-plugin-babel`则用于将现代JavaScript语法转换为广泛兼容的版本。...