另group by后带rollup子句所返回的结果集,可以理解为各个分组所产生的结果集的并集且没有去掉重复数据。 下面举例说明: 1、对比没有带rollup的goup by 例:Group by A ,B 产生的分组种数:1种; 即group by A,B 返回结果集:也就是这一种分组的结果集。 2、带rollup但group by与rollup之间没有任何内容 例1...
GROUP BY ROLLUP(name,syear,course) ORDER BY GROUPING__ID; 我们先不理GROUPING__ID,后面会讲到,下面所说的级别是想让大家便于理解,与GROUPING__ID无关(通过GROUPING__ID的大小也可区分出级别,只不过不是连续的,后边会讲到原因) GROUP BY ROLLUP 是逐级运算的,那级别如何划分? 就是group by ROLLUP(c1,c2...
一、GROUP BY ROLLUP的基本功能 GROUP BY ROLLUP是GBase 8s数据库中的一个高级分组查询功能,它可以根据指定的列进行分组统计,并支持不同级别的汇总计算。基本语法:SELECT 列1, 列2, ...FROM 表名 GROUP BY ROLLUP(列1, 列2, ...);使用时,系统首先按照指定的多列进行分组,然后将多组结果集进行 UNION...
一、GROUP BY ROLLUP的基本功能 GROUP BY ROLLUP是GBase 8s数据库中的一个高级分组查询功能,它可以根据指定的列进行分组统计,并支持不同级别的汇总计算。 基本语法: SELECT 列1, 列2, ... FROM 表名 GROUP BY ROLLUP(列1, 列2, ...); 使用时,系统首先按照指定的多列进行分组,然后将多组结果集进行 UNI...
一、ROLLUP 修饰符的意义 GROUP BY子句允许添加WITH ROLLUP修饰符,该修饰符可以对分组后各组的某个列的结果值进行汇总,并在结果中输出,即提供更高一级的聚合操作。 因此,ROLLUP使您能够使用单个查询在多个分析级别回答问题。例如,ROLLUP可用于为OLAP(在线分析处理)操作提供支持。
使用GROUP BY ROLLUP 接下来,我们将使用这一表格演示GROUP BY ROLLUP的应用。 示例查询 假设我们希望根据category和product对销售额amount进行汇总,同时希望最终得到三层的汇总数据(每个产品、每个类别的总和、总和)。我们可以使用以下SQL查询: SELECTcategory,product,SUM(amount)AStotal_salesFROMsalesGROUPBYcategory,product...
ROLLUP、CUBE 或 GROUPING SETS 运算符可以生成与使用 UNION ALL 来组合单个分组查询时相同的结果集;但是,使用其中一种 GROUP BY 运算符通常更有效。 GROUPING SETS 运算符可以生成与使用单个 GROUP BY、ROLLUP 或 CUBE 运算符所生成的结果集相同的结果集。如果不需要获得由完备的 ROLLUP 或 CUBE 运算符生成的全部...
1、group byrollup( ) SELECTregion,SUM(salesVolume)销量FROMSalesGROUPBYROLLUP(region) 返回结果如下: 这里比不加 rollup()的查询结果多了一行总计。 2、group bycube( ) SELECTregion,commodity,SUM(salesVolume)销量FROMSalesGROUPBYCUBE(region,commodity) ...
在MySQL语句中,使用GROUP BY语句可以检索各组的聚合信息,添加WITH ROLLUP后能将分组后的信息按组聚合。 由下表进行数据测试: 1> 先试用不带聚合函数的GROUP BY语句进行测试得到结果如下图: 上图所测部分箭头所指右侧部分的数据是对应的,右侧部分方框中的数据是对上面该组数据的汇总,由于没有使用聚合函数,所以用NU...