学习 Hive(十二):分组集

栏目: 服务器 · 发布时间: 7年前

内容简介:分组集(Grouping Sets)实现了在一条 GROUP BY 语句多次 GROUP BY 操作。:point_up_2: 的 SQL 语句:point_up_2: 的 SQL 语句

分组集

分组集(Grouping Sets)实现了在一条 GROUP BY 语句多次 GROUP BY 操作。

SELECT  
  a,
  b,
  SUM(c)
FROM t1  
GROUP BY a, b  
GROUPING SETS((a, b))

:point_up_2: 的 SQL 语句 (a, b) 是一个分组集,其等价于

SELECT  
  a,
  b,
  SUM(c)
FROM t1  
GROUP BY a, b
SELECT  
  a,
  b,
  SUM(c)
FROM t1  
GROUP BY a, b  
GROUPING SETS(a, b)

:point_up_2: 的 SQL 语句 ab 是两个分组集,相当于将两个 GROUP BY 通过 UNION 合并,其等价于:

SELECT  
  a,
  null,
  SUM(c)
FROM t1  
GROUP BY a  
UNION  
SELECT  
  null,
  b,
  SUM(c)
FROM t1  
GROUP BY b

ROLLUP

上卷(Roll Up)也是一类分组集,按着分组条件逐层上卷,例如: GROUP BY a, b, c WITH ROLLUP 相当于 GROUP BY a, b, c GROUPING SETS((a, b, c), (a, b), (a), ())

CUBE

数据立方体(Cube)也是一类分组集,按着分组条件生成 2 的 n 次方种分组集组合,例如: GROUP BY a, b, c WITH CUBE 相当于 GROUP BY a, b, c GROUPING SETS((a, b, c), (a, b), (a, c), (b, c), (a), (b), (c), ())

GROUPING FUNCTION

grouping 函数可以用于查看分组集中的列是否参与了 GROUP BY 聚合,如果值为 0 则表示有,如果值为 1 则表示没有。

参考


以上所述就是小编给大家介绍的《学习 Hive(十二):分组集》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

罗辑思维

罗辑思维

罗振宇 / 长江文艺出版社 / 2013-10-25 / 36.00

本书根据罗振宇的互联网视频知识脱口秀《罗辑思维》创作。 资深媒体人罗振宇对正在到来的互联网时代有深刻的洞察。他认为,互联网正在成为我们生活中的“基础设施”,它将彻底改变人类协作的方式,使组织逐渐瓦解、消融,而个体生命的自由价值得到充分释放。 《罗辑思维》的口号是“有种、 有趣、有料”,做大家“身边的读书人”,倡导独立、理性的思考,凝聚爱智求真、积极上进、自由阳光、人格健全的年轻人。......一起来看看 《罗辑思维》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具