@@ -163,7 +163,7 @@ select column1, column2, column3 from arrays_values_without_nulls;
163
163
### Array function tests
164
164
165
165
166
- ## make_array
166
+ ## make_array (aliases: `make_list`)
167
167
168
168
# make_array scalar function #1
169
169
query ???
@@ -207,6 +207,12 @@ select make_array(make_array()), make_array(make_array(make_array()))
207
207
----
208
208
[[]] [[[]]]
209
209
210
+ # make_list scalar function #8 (function alias: `make_array`)
211
+ query ???
212
+ select make_list(1, 2, 3), make_list(1.0, 2.0, 3.0), make_list('h', 'e', 'l', 'l', 'o');
213
+ ----
214
+ [1, 2, 3] [1.0, 2.0, 3.0] [h, e, l, l, o]
215
+
210
216
# make_array scalar function with nulls
211
217
query ???
212
218
select make_array(1, NULL, 3), make_array(NULL, 2.0, NULL), make_array('h', NULL, 'l', NULL, 'o');
@@ -286,9 +292,9 @@ from values;
286
292
287
293
288
294
289
- ## array_append
295
+ ## array_append (aliases: `list_append`, `array_push_back`, `list_push_back`)
290
296
291
- # array_append scalar function #2
297
+ # array_append scalar function #1
292
298
query ?
293
299
select array_append(make_array(), 4);
294
300
----
@@ -312,6 +318,24 @@ select array_append(make_array([1], [2], [3]), make_array(4)), array_append(make
312
318
----
313
319
[[1], [2], [3], [4]] [[1.0], [2.0], [3.0], [4.0]] [[h], [e], [l], [l], [o]]
314
320
321
+ # list_append scalar function #5 (function alias `array_append`)
322
+ query ???
323
+ select list_append(make_array(1, 2, 3), 4), list_append(make_array(1.0, 2.0, 3.0), 4.0), list_append(make_array('h', 'e', 'l', 'l'), 'o');
324
+ ----
325
+ [1, 2, 3, 4] [1.0, 2.0, 3.0, 4.0] [h, e, l, l, o]
326
+
327
+ # array_push_back scalar function #6 (function alias `array_append`)
328
+ query ???
329
+ select array_push_back(make_array(1, 2, 3), 4), array_push_back(make_array(1.0, 2.0, 3.0), 4.0), array_push_back(make_array('h', 'e', 'l', 'l'), 'o');
330
+ ----
331
+ [1, 2, 3, 4] [1.0, 2.0, 3.0, 4.0] [h, e, l, l, o]
332
+
333
+ # list_push_back scalar function #7 (function alias `array_append`)
334
+ query ???
335
+ select list_push_back(make_array(1, 2, 3), 4), list_push_back(make_array(1.0, 2.0, 3.0), 4.0), list_push_back(make_array('h', 'e', 'l', 'l'), 'o');
336
+ ----
337
+ [1, 2, 3, 4] [1.0, 2.0, 3.0, 4.0] [h, e, l, l, o]
338
+
315
339
# array_append with columns #1
316
340
query ?
317
341
select array_append(column1, column2) from arrays_values;
@@ -351,7 +375,7 @@ select array_append(column1, make_array(1, 11, 111)), array_append(make_array(ma
351
375
[[1, 2, 3], [2, 9, 1], [7, 8, 9], [1, 2, 3], [1, 7, 4], [4, 5, 6], [1, 11, 111]] [[1, 2, 3], [11, 12, 13], [7, 8, 9]]
352
376
[[4, 5, 6], [10, 11, 12], [4, 9, 8], [7, 8, 9], [10, 11, 12], [1, 8, 7], [1, 11, 111]] [[1, 2, 3], [11, 12, 13], [10, 11, 12]]
353
377
354
- ## array_prepend
378
+ ## array_prepend (aliases: `list_prepend`, `array_push_front`, `list_push_front`)
355
379
356
380
# array_prepend scalar function #1
357
381
query ?
@@ -377,6 +401,24 @@ select array_prepend(make_array(1), make_array(make_array(2), make_array(3), mak
377
401
----
378
402
[[1], [2], [3], [4]] [[1.0], [2.0], [3.0], [4.0]] [[h], [e], [l], [l], [o]]
379
403
404
+ # list_prepend scalar function #5 (function alias `array_prepend`)
405
+ query ???
406
+ select list_prepend(1, make_array(2, 3, 4)), list_prepend(1.0, make_array(2.0, 3.0, 4.0)), list_prepend('h', make_array('e', 'l', 'l', 'o'));
407
+ ----
408
+ [1, 2, 3, 4] [1.0, 2.0, 3.0, 4.0] [h, e, l, l, o]
409
+
410
+ # array_push_front scalar function #6 (function alias `array_prepend`)
411
+ query ???
412
+ select array_push_front(1, make_array(2, 3, 4)), array_push_front(1.0, make_array(2.0, 3.0, 4.0)), array_push_front('h', make_array('e', 'l', 'l', 'o'));
413
+ ----
414
+ [1, 2, 3, 4] [1.0, 2.0, 3.0, 4.0] [h, e, l, l, o]
415
+
416
+ # list_push_front scalar function #7 (function alias `array_prepend`)
417
+ query ???
418
+ select list_push_front(1, make_array(2, 3, 4)), list_push_front(1.0, make_array(2.0, 3.0, 4.0)), list_push_front('h', make_array('e', 'l', 'l', 'o'));
419
+ ----
420
+ [1, 2, 3, 4] [1.0, 2.0, 3.0, 4.0] [h, e, l, l, o]
421
+
380
422
# array_prepend with columns #1
381
423
query ?
382
424
select array_prepend(column2, column1) from arrays_values;
@@ -436,7 +478,7 @@ select array_fill(1, make_array())
436
478
----
437
479
[]
438
480
439
- ## array_concat
481
+ ## array_concat (aliases: `array_cat`, `list_concat`, `list_cat`)
440
482
441
483
# array_concat scalar function #1
442
484
query ??
@@ -474,30 +516,78 @@ select array_concat(make_array(), make_array(2, 3));
474
516
----
475
517
[2, 3]
476
518
519
+ # array_concat scalar function #7 (with empty arrays)
520
+ query ?
521
+ select array_concat(make_array(make_array(1, 2), make_array(3, 4)), make_array(make_array()));
522
+ ----
523
+ [[1, 2], [3, 4]]
524
+
525
+ # array_concat scalar function #8 (with empty arrays)
526
+ query ?
527
+ select array_concat(make_array(make_array(1, 2), make_array(3, 4)), make_array(make_array()), make_array(make_array(), make_array()), make_array(make_array(5, 6), make_array(7, 8)));
528
+ ----
529
+ [[1, 2], [3, 4], [5, 6], [7, 8]]
530
+
531
+ # array_concat scalar function #9 (with empty arrays)
532
+ query ?
533
+ select array_concat(make_array(make_array()), make_array(make_array(1, 2), make_array(3, 4)));
534
+ ----
535
+ [[1, 2], [3, 4]]
536
+
537
+ # array_cat scalar function #10 (function alias `array_concat`)
538
+ query ??
539
+ select array_cat(make_array(1, 2, 3), make_array(4, 5, 6), make_array(7, 8, 9)), array_cat(make_array([1], [2]), make_array([3], [4]));
540
+ ----
541
+ [1, 2, 3, 4, 5, 6, 7, 8, 9] [[1], [2], [3], [4]]
542
+
543
+ # list_concat scalar function #11 (function alias `array_concat`)
544
+ query ??
545
+ select list_concat(make_array(1, 2, 3), make_array(4, 5, 6), make_array(7, 8, 9)), list_concat(make_array([1], [2]), make_array([3], [4]));
546
+ ----
547
+ [1, 2, 3, 4, 5, 6, 7, 8, 9] [[1], [2], [3], [4]]
548
+
549
+ # list_cat scalar function #12 (function alias `array_concat`)
550
+ query ??
551
+ select list_cat(make_array(1, 2, 3), make_array(4, 5, 6), make_array(7, 8, 9)), list_cat(make_array([1], [2]), make_array([3], [4]));
552
+ ----
553
+ [1, 2, 3, 4, 5, 6, 7, 8, 9] [[1], [2], [3], [4]]
554
+
477
555
# array_concat with different dimensions #1 (2D + 1D)
478
556
query ?
479
- select array_concat(make_array([1,2], [3,4]), make_array(5, 6))
557
+ select array_concat(make_array([1,2], [3,4]), make_array(5, 6));
480
558
----
481
559
[[1, 2], [3, 4], [5, 6]]
482
560
483
561
# array_concat with different dimensions #2 (1D + 2D)
484
562
query ?
485
- select array_concat(make_array(5, 6), make_array([1,2], [3,4]))
563
+ select array_concat(make_array(5, 6), make_array([1,2], [3,4]));
486
564
----
487
565
[[5, 6], [1, 2], [3, 4]]
488
566
489
567
# array_concat with different dimensions #3 (2D + 1D + 1D)
490
568
query ?
491
- select array_concat(make_array([1,2], [3,4]), make_array(5, 6), make_array(7,8))
569
+ select array_concat(make_array([1,2], [3,4]), make_array(5, 6), make_array(7,8));
492
570
----
493
571
[[1, 2], [3, 4], [5, 6], [7, 8]]
494
572
495
573
# array_concat with different dimensions #4 (1D + 2D + 3D)
496
574
query ?
497
- select array_concat(make_array(10, 20), make_array([30, 40]), make_array([[50, 60]]))
575
+ select array_concat(make_array(10, 20), make_array([30, 40]), make_array([[50, 60]]));
498
576
----
499
577
[[[10, 20]], [[30, 40]], [[50, 60]]]
500
578
579
+ # array_concat with different dimensions #5 (2D + 1D + 3D)
580
+ query ?
581
+ select array_concat(make_array([30, 40]), make_array(10, 20), make_array([[50, 60]]));
582
+ ----
583
+ [[[30, 40]], [[10, 20]], [[50, 60]]]
584
+
585
+ # array_concat with different dimensions #6 (2D + 1D + 3D + 4D + 3D)
586
+ query ?
587
+ select array_concat(make_array([30, 40]), make_array(10, 20), make_array([[50, 60]]), make_array([[[70, 80]]]), make_array([[80, 40]]));
588
+ ----
589
+ [[[[30, 40]]], [[[10, 20]]], [[[50, 60]]], [[[70, 80]]], [[[80, 40]]]]
590
+
501
591
# array_concat column-wise #1
502
592
query ?
503
593
select array_concat(column1, make_array(0)) from arrays_values_without_nulls;
@@ -635,7 +725,7 @@ select array_concat(make_array(column3), column1, column2) from arrays_values_v2
635
725
[, 11, 12]
636
726
[]
637
727
638
- ## array_position
728
+ ## array_position (aliases: `list_position`, `array_indexof`, `list_indexof`)
639
729
640
730
# array_position scalar function #1
641
731
query III
@@ -661,6 +751,24 @@ select array_position(make_array([1, 2, 3], [4, 5, 6], [5, 5, 5], [4, 5, 6], [7,
661
751
----
662
752
4 3
663
753
754
+ # list_position scalar function #5 (function alias `array_position`)
755
+ query III
756
+ select list_position(['h', 'e', 'l', 'l', 'o'], 'l'), list_position([1, 2, 3, 4, 5], 5), list_position([1, 1, 1], 1);
757
+ ----
758
+ 3 5 1
759
+
760
+ # array_indexof scalar function #6 (function alias `array_position`)
761
+ query III
762
+ select array_indexof(['h', 'e', 'l', 'l', 'o'], 'l'), array_indexof([1, 2, 3, 4, 5], 5), array_indexof([1, 1, 1], 1);
763
+ ----
764
+ 3 5 1
765
+
766
+ # list_indexof scalar function #7 (function alias `array_position`)
767
+ query III
768
+ select list_indexof(['h', 'e', 'l', 'l', 'o'], 'l'), list_indexof([1, 2, 3, 4, 5], 5), list_indexof([1, 1, 1], 1);
769
+ ----
770
+ 3 5 1
771
+
664
772
# array_position with columns #1
665
773
query II
666
774
select array_position(column1, column2), array_position(column1, column2, column3) from arrays_values_without_nulls;
@@ -693,20 +801,26 @@ select array_position(make_array([1, 2, 3], [4, 5, 6], [11, 12, 13]), column2),
693
801
NULL 6 4
694
802
NULL 1 NULL
695
803
696
- ## array_positions
804
+ ## array_positions (aliases: `list_positions`)
697
805
698
806
# array_positions scalar function #1
699
807
query ???
700
808
select array_positions(['h', 'e', 'l', 'l', 'o'], 'l'), array_positions([1, 2, 3, 4, 5], 5), array_positions([1, 1, 1], 1);
701
809
----
702
810
[3, 4] [5] [1, 2, 3]
703
811
704
- # array_positions scalar function #2
812
+ # array_positions scalar function #2 (element is list)
705
813
query ?
706
814
select array_positions(make_array([1, 2, 3], [2, 1, 3], [1, 5, 6], [2, 1, 3], [4, 5, 6]), [2, 1, 3]);
707
815
----
708
816
[2, 4]
709
817
818
+ # list_positions scalar function #3 (function alias `array_positions`)
819
+ query ???
820
+ select list_positions(['h', 'e', 'l', 'l', 'o'], 'l'), list_positions([1, 2, 3, 4, 5], 5), list_positions([1, 1, 1], 1);
821
+ ----
822
+ [3, 4] [5] [1, 2, 3]
823
+
710
824
# array_positions with columns #1
711
825
query ?
712
826
select array_positions(column1, column2) from arrays_values_without_nulls;
@@ -747,9 +861,9 @@ select array_replace(make_array(1, 2, 3, 4), 2, 3), array_replace(make_array(1,
747
861
----
748
862
[1, 3, 3, 4] [1, 0, 0, 5, 0, 6, 7] [1, 2, 3]
749
863
750
- ## array_to_string
864
+ ## array_to_string (aliases: `list_to_string`, `array_join`, `list_join`)
751
865
752
- # array_to_string scalar function
866
+ # array_to_string scalar function #1
753
867
query TTT
754
868
select array_to_string(['h', 'e', 'l', 'l', 'o'], ','), array_to_string([1, 2, 3, 4, 5], '-'), array_to_string([1.0, 2.0, 3.0], '|');
755
869
----
@@ -767,6 +881,24 @@ select array_to_string(make_array(), ',')
767
881
----
768
882
(empty)
769
883
884
+ # list_to_string scalar function #4 (function alias `array_to_string`)
885
+ query TTT
886
+ select list_to_string(['h', 'e', 'l', 'l', 'o'], ','), list_to_string([1, 2, 3, 4, 5], '-'), list_to_string([1.0, 2.0, 3.0], '|');
887
+ ----
888
+ h,e,l,l,o 1-2-3-4-5 1|2|3
889
+
890
+ # array_join scalar function #5 (function alias `array_to_string`)
891
+ query TTT
892
+ select array_join(['h', 'e', 'l', 'l', 'o'], ','), array_join([1, 2, 3, 4, 5], '-'), array_join([1.0, 2.0, 3.0], '|');
893
+ ----
894
+ h,e,l,l,o 1-2-3-4-5 1|2|3
895
+
896
+ # list_join scalar function #6 (function alias `list_join`)
897
+ query TTT
898
+ select list_join(['h', 'e', 'l', 'l', 'o'], ','), list_join([1, 2, 3, 4, 5], '-'), list_join([1.0, 2.0, 3.0], '|');
899
+ ----
900
+ h,e,l,l,o 1-2-3-4-5 1|2|3
901
+
770
902
# array_to_string scalar function with nulls #1
771
903
query TTT
772
904
select array_to_string(make_array('h', NULL, 'l', NULL, 'o'), ','), array_to_string(make_array(1, NULL, 3, NULL, 5), '-'), array_to_string(make_array(NULL, 2.0, 3.0), '|');
@@ -887,9 +1019,9 @@ select trim_array(make_array(), 0), trim_array(make_array(), 1)
887
1019
----
888
1020
[] []
889
1021
890
- ## array_length
1022
+ ## array_length (aliases: `list_length`)
891
1023
892
- # array_length scalar function
1024
+ # array_length scalar function #1
893
1025
query III
894
1026
select array_length(make_array(1, 2, 3, 4, 5)), array_length(make_array(1, 2, 3)), array_length(make_array([1, 2], [3, 4], [5, 6]));
895
1027
----
@@ -919,6 +1051,12 @@ select array_length(make_array()), array_length(make_array(), 1), array_length(m
919
1051
----
920
1052
0 0 NULL
921
1053
1054
+ # list_length scalar function #6 (function alias `array_length`)
1055
+ query III
1056
+ select list_length(make_array(1, 2, 3, 4, 5)), list_length(make_array(1, 2, 3)), list_length(make_array([1, 2], [3, 4], [5, 6]));
1057
+ ----
1058
+ 5 3 3
1059
+
922
1060
# array_length with columns
923
1061
query I
924
1062
select array_length(column1, column3) from arrays_values;
@@ -945,7 +1083,7 @@ NULL 10
945
1083
NULL 10
946
1084
NULL 10
947
1085
948
- ## array_dims
1086
+ ## array_dims (aliases: `list_dims`)
949
1087
950
1088
# array_dims scalar function
951
1089
query ???
@@ -965,6 +1103,12 @@ select array_dims(make_array()), array_dims(make_array(make_array()))
965
1103
----
966
1104
NULL [1, 0]
967
1105
1106
+ # list_dims scalar function #4 (function alias `array_dims`)
1107
+ query ???
1108
+ select list_dims(make_array(1, 2, 3)), list_dims(make_array([1, 2], [3, 4])), list_dims(make_array([[[[1], [2]]]]));
1109
+ ----
1110
+ [3] [2, 2] [1, 1, 1, 2, 1]
1111
+
968
1112
# array_dims with columns
969
1113
query ???
970
1114
select array_dims(column1), array_dims(column2), array_dims(column3) from arrays;
@@ -977,9 +1121,9 @@ NULL [3] [4]
977
1121
[2, 2] NULL [1]
978
1122
[2, 2] [3] NULL
979
1123
980
- ## array_ndims
1124
+ ## array_ndims (aliases: `list_ndims`)
981
1125
982
- # array_ndims scalar function
1126
+ # array_ndims scalar function #1
983
1127
query III
984
1128
select array_ndims(make_array(1, 2, 3)), array_ndims(make_array([1, 2], [3, 4])), array_ndims(make_array([[[[1], [2]]]]));
985
1129
----
@@ -997,6 +1141,17 @@ select array_ndims(make_array()), array_ndims(make_array(make_array()))
997
1141
----
998
1142
NULL 2
999
1143
1144
+ # list_ndims scalar function #4 (function alias `array_ndims`)
1145
+ query III
1146
+ select list_ndims(make_array(1, 2, 3)), list_ndims(make_array([1, 2], [3, 4])), list_ndims(make_array([[[[1], [2]]]]));
1147
+ ----
1148
+ 1 2 5
1149
+
1150
+ query II
1151
+ select array_ndims(make_array()), array_ndims(make_array(make_array()))
1152
+ ----
1153
+ NULL 2
1154
+
1000
1155
# array_ndims with columns
1001
1156
query III
1002
1157
select array_ndims(column1), array_ndims(column2), array_ndims(column3) from arrays;
0 commit comments