-
GROUPING SETS: 根据不同的维度组合进行聚合,等价于将不同维度的GROUP BY结果集进行UNION ALL
-
GROUPING__ID:表示结果属于哪一个分组集合,属于虚字段
-
CUBE: 根据GROUP BY的维度的所有组合进行聚合。
-
ROLLUP: 为CUBE的子集,以最左侧的维度为主,从该维度进行层级聚合。
关于grouping sets的使用,我是参考这篇博客学习的,感觉讲的很清楚 网址链接
通俗的说,grouping sets是一种将多个group by 逻辑写在一个sql语句中的便利写法。
select
A,
B,
C,
group_id,
count(A)
from
tableName
group by --declare columns
A,
B,
C
grouping sets
(
(A,C),
(A,B),
(B,C),
(C)
)
其中grouping se

GROUPING SETS允许将多个GROUP BY逻辑整合到一个SQL语句中,等价于对不同维度组合的UNION ALL。GROUPING ID标识结果属于哪个分组集合,CUBE提供所有维度组合的聚合,而ROLLUP是CUBE的子集,从最左侧维度开始层级聚合。通过示例展示了如何使用GROUPING SETS进行年、月、年月的汇总,以及GROUP_ID如何表示分组信息。
最低0.47元/天 解锁文章
396

被折叠的 条评论
为什么被折叠?



