@@ -29,17 +29,18 @@ CREATE TABLE values(
2929 b INT,
3030 c INT,
3131 d FLOAT,
32- e VARCHAR
32+ e VARCHAR,
33+ f VARCHAR
3334) AS VALUES
34- (1, 1, 2, 1.1, 'Lorem'),
35- (2, 3, 4, 2.2, 'ipsum'),
36- (3, 5, 6, 3.3, 'dolor'),
37- (4, 7, 8, 4.4, 'sit'),
38- (NULL, 9, 10, 5.5, 'amet'),
39- (5, NULL, 12, 6.6, ', '),
40- (6, 11, NULL, 7.7, 'consectetur'),
41- (7, 13, 14, NULL, 'adipiscing'),
42- (8, 15, 16, 8.8, NULL)
35+ (1, 1, 2, 1.1, 'Lorem', 'A '),
36+ (2, 3, 4, 2.2, 'ipsum', ' '),
37+ (3, 5, 6, 3.3, 'dolor', 'BB '),
38+ (4, 7, 8, 4.4, 'sit', NULL ),
39+ (NULL, 9, 10, 5.5, 'amet', 'CCC '),
40+ (5, NULL, 12, 6.6, ',', 'DD '),
41+ (6, 11, NULL, 7.7, 'consectetur', 'E '),
42+ (7, 13, 14, NULL, 'adipiscing', 'F '),
43+ (8, 15, 16, 8.8, NULL, '' )
4344;
4445
4546statement ok
@@ -189,34 +190,67 @@ select make_array(NULL), make_array(NULL, NULL, NULL), make_array(make_array(NUL
189190----
190191[] [] [[], []]
191192
192- # make_array with columns #1
193- query ????
194- select make_array(a), make_array(b, c), make_array(d), make_array(e) from values;
195- ----
196- [1] [1, 2] [1.1] [Lorem]
197- [2] [3, 4] [2.2] [ipsum]
198- [3] [5, 6] [3.3] [dolor]
199- [4] [7, 8] [4.4] [sit]
200- [0] [9, 10] [5.5] [amet]
201- [5] [0, 12] [6.6] [,]
202- [6] [11, 0] [7.7] [consectetur]
203- [7] [13, 14] [0.0] [adipiscing]
204- [8] [15, 16] [8.8] []
205-
206- # make_array with columns #2
193+ # make_array with 1 columns
194+ query ???
195+ select make_array(a), make_array(d), make_array(e) from values;
196+ ----
197+ [1] [1.1] [Lorem]
198+ [2] [2.2] [ipsum]
199+ [3] [3.3] [dolor]
200+ [4] [4.4] [sit]
201+ [] [5.5] [amet]
202+ [5] [6.6] [,]
203+ [6] [7.7] [consectetur]
204+ [7] [] [adipiscing]
205+ [8] [8.8] []
206+
207+ # make_array with 2 columns #1
208+ query ??
209+ select make_array(b, c), make_array(e, f) from values;
210+ ----
211+ [1, 2] [Lorem, A]
212+ [3, 4] [ipsum, ]
213+ [5, 6] [dolor, BB]
214+ [7, 8] [sit, ]
215+ [9, 10] [amet, CCC]
216+ [, 12] [,, DD]
217+ [11, ] [consectetur, E]
218+ [13, 14] [adipiscing, F]
219+ [15, 16] [, ]
220+
221+ # make_array with 4 columns
207222query ?
208223select make_array(a, b, c, d) from values;
209224----
210225[1.0, 1.0, 2.0, 1.1]
211226[2.0, 3.0, 4.0, 2.2]
212227[3.0, 5.0, 6.0, 3.3]
213228[4.0, 7.0, 8.0, 4.4]
214- [0.0 , 9.0, 10.0, 5.5]
215- [5.0, 0.0 , 12.0, 6.6]
216- [6.0, 11.0, 0.0 , 7.7]
217- [7.0, 13.0, 14.0, 0.0 ]
229+ [, 9.0, 10.0, 5.5]
230+ [5.0, , 12.0, 6.6]
231+ [6.0, 11.0, , 7.7]
232+ [7.0, 13.0, 14.0, ]
218233[8.0, 15.0, 16.0, 8.8]
219234
235+ # make_array null handling
236+ query ?B?BB
237+ select
238+ make_array(a), make_array(a)[1] IS NULL,
239+ make_array(e, f), make_array(e, f)[1] IS NULL, make_array(e, f)[2] IS NULL
240+ from values;
241+ ----
242+ [1] false [Lorem, A] false false
243+ [2] false [ipsum, ] false false
244+ [3] false [dolor, BB] false false
245+ [4] false [sit, ] false true
246+ [] true [amet, CCC] false false
247+ [5] false [,, DD] false false
248+ [6] false [consectetur, E] false false
249+ [7] false [adipiscing, F] false false
250+ [8] false [, ] true false
251+
252+
253+
220254## array_append
221255
222256# array_append scalar function #2
0 commit comments