如果我们现在有一个多维度的统计报表
老板要看多个维度的不同组合下的查询结果
涉及到的维度有n个
要使用高阶聚合函数 with cube
使用方式
select
-- 无法统计的字段会补null
a,
b,
c,
count(1)
from t
group by a,b,c --最大的范围
with cube
grouping set
计算我们想要的组合
使用方式:
select
-- 无法统计的字段会补null
a,
b,
c,
count(1)
from t
group by a,b,c
grouping sets ((a,b),a,c,())
with rollup
只会帮助计算上卷组合
--比如group by a,b,c rollup会计算(a,b,c),(a,b),(a),()