MapReduce服务 MRS-Hive支持的传统关系型数据库语法:Grouping

时间:2023-11-01 16:25:29

Grouping

语法简介:

  • 当Group by语句带with rollup/cube选项时,Grouping才有意义。
  • CUBE生成的结果集显示了所选列中值的所有组合的聚合。
  • ROLLUP生成的结果集显示了所选列中值的某一层次结构的聚合。
  • Grouping:当用CUBE或ROLLUP运算符添加行时,附加的列输出值为1;当所添加的行不是由CUBE或ROLLUP产生时,附加列值为0。

例如,Hive中有一张表“table_test”,表结构如下所示:

+----------------+-------------------+--+| table_test.id  | table_test.value  |+----------------+-------------------+--+| 1              | 10                || 1              | 15                || 2              | 20                || 2              | 5                 || 2              | 13                |+----------------+-------------------+--+

执行如下语句:

select id,grouping(id),sum(value) from table_test group by id with rollup;

得到如下结果:

+-------+-----------------+------+--+|  id   | groupingresult  | sum  |+-------+-----------------+------+--+| 1     | 0               | 25   || NULL  | 1               | 63   || 2     | 0               | 38   |+-------+-----------------+------+--+
support.huaweicloud.com/cmpntguide-mrs/mrs_01_0962.html