@@ -19,6 +19,26 @@ NULL 0
1919NULL 1
2020NULL 2
2121
22+ query TT
23+ select number % 2 as a, number % 3 as b from numbers(24) group by grouping sets ((1,2), (1), (2)) order by a,b;
24+ ----
25+ 0 0
26+ 0 1
27+ 0 2
28+ 0 NULL
29+ 1 0
30+ 1 1
31+ 1 2
32+ 1 NULL
33+ NULL 0
34+ NULL 1
35+ NULL 2
36+
37+ statement ok
38+ create database if not exists grouping_sets;
39+
40+ statement ok
41+ use grouping_sets;
2242
2343statement ok
2444drop table if exists t;
@@ -55,6 +75,19 @@ NULL B 10 0 1 2 1
5575b NULL 11 1 0 1 2
5676NULL NULL 18 1 1 3 3
5777
78+ query TTIIIII
79+ select a, b, sum(c) as sc, grouping(b), grouping(a), grouping(a,b), grouping(b,a) from t group by grouping sets ((1,2),(),(2),(1)) order by sc;
80+ ----
81+ a A 3 0 0 0 0
82+ a B 4 0 0 0 0
83+ b A 5 0 0 0 0
84+ b B 6 0 0 0 0
85+ a NULL 7 1 0 1 2
86+ NULL A 8 0 1 2 1
87+ NULL B 10 0 1 2 1
88+ b NULL 11 1 0 1 2
89+ NULL NULL 18 1 1 3 3
90+
5891query TTIIIII
5992select a, b, sum(c) as sc, grouping(b), grouping(a), grouping(a,b), grouping(b,a) from t group by grouping sets ((a,b),(a),()) order by sc;
6093----
@@ -80,6 +113,19 @@ NULL B 10 0 1 2 1
80113b NULL 11 1 0 1 2
81114NULL NULL 18 1 1 3 3
82115
116+ query TTIIIII
117+ select a, b, sum(c) as sc, grouping(b), grouping(a), grouping(a,b), grouping(b,a) from t group by cube (1,2) order by sc;
118+ ----
119+ a A 3 0 0 0 0
120+ a B 4 0 0 0 0
121+ b A 5 0 0 0 0
122+ b B 6 0 0 0 0
123+ a NULL 7 1 0 1 2
124+ NULL A 8 0 1 2 1
125+ NULL B 10 0 1 2 1
126+ b NULL 11 1 0 1 2
127+ NULL NULL 18 1 1 3 3
128+
83129query TTIIIII
84130select a, b, sum(c) as sc, grouping(b), grouping(a), grouping(a,b), grouping(b,a) from t group by rollup (a,b) order by sc;
85131----
@@ -91,5 +137,19 @@ a NULL 7 1 0 1 2
91137b NULL 11 1 0 1 2
92138NULL NULL 18 1 1 3 3
93139
140+ query TTIIIII
141+ select a, b, sum(c) as sc, grouping(b), grouping(a), grouping(a,b), grouping(b,a) from t group by rollup (1,2) order by sc;
142+ ----
143+ a A 3 0 0 0 0
144+ a B 4 0 0 0 0
145+ b A 5 0 0 0 0
146+ b B 6 0 0 0 0
147+ a NULL 7 1 0 1 2
148+ b NULL 11 1 0 1 2
149+ NULL NULL 18 1 1 3 3
150+
94151statement ok
95152drop table t all;
153+
154+ statement ok
155+ drop database grouping_sets;
0 commit comments