grouping_id
grouping_id介绍
grouping_id([col1[, col2 ..]]) - 返回分组的级别,等同于 (grouping(c1) << (n-1)) + (grouping(c2) << (n-2)) + ... + grouping(cn)
,其中 n 是 GROUP BY 子句中列的数量,grouping 函数返回的是 0 或 1,表示相应列是否被聚合。
Examples:
> SELECT name, grouping_id(), sum(age), avg(height) FROM VALUES (2, 'Alice', 165), (5, 'Bob', 180) people(age, name, height) GROUP BY cube(name, height);
Alice 0 2 165.0
Alice 1 2 165.0
NULL 3 7 172.5
Bob 0 5 180.0
Bob 1 5 180.0
NULL 2 2 165.0
NULL 2 5 180.0
** 提示:**
输入列应与分组列完全匹配,或者为空(意味着所有的分组列)。
Since: 2.0.0