@@ -2764,3 +2764,134 @@ evaluation (internal):
2764
2764
+--------+------------------------------------------------------------------------------------+
2765
2765
2766
2766
2767
+ error:
2768
+ --> SQL:1:1
2769
+ |
2770
+ 1 | insert('Quadratic', 3, 4, 'What', 4)
2771
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no overload satisfies `insert(String, UInt8, UInt8, String, UInt8)`
2772
+
2773
+
2774
+
2775
+ error:
2776
+ --> SQL:1:1
2777
+ |
2778
+ 1 | insert('Quadratic', 3, 4)
2779
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^ no overload satisfies `insert(String, UInt8, UInt8)`
2780
+
2781
+
2782
+
2783
+ ast : insert('Quadratic', 3, 4, 'What')
2784
+ raw expr : insert("Quadratic", 3_u8, 4_u8, "What")
2785
+ checked expr : insert<String, Int64, Int64, String>("Quadratic", CAST(3_u8 AS Int64), CAST(4_u8 AS Int64), "What")
2786
+ optimized expr : "QuWhattic"
2787
+ output type : String
2788
+ output domain : Unknown
2789
+ output : "QuWhattic"
2790
+
2791
+
2792
+ ast : insert('Quadratic', -1, 4, 'What')
2793
+ raw expr : insert("Quadratic", minus(1_u8), 4_u8, "What")
2794
+ checked expr : insert<String, Int64, Int64, String>("Quadratic", CAST(minus<UInt8>(1_u8) AS Int64), CAST(4_u8 AS Int64), "What")
2795
+ optimized expr : "Quadratic"
2796
+ output type : String
2797
+ output domain : Unknown
2798
+ output : "Quadratic"
2799
+
2800
+
2801
+ ast : insert('Quadratic', 3, 100, 'What')
2802
+ raw expr : insert("Quadratic", 3_u8, 100_u8, "What")
2803
+ checked expr : insert<String, Int64, Int64, String>("Quadratic", CAST(3_u8 AS Int64), CAST(100_u8 AS Int64), "What")
2804
+ optimized expr : "QuWhat"
2805
+ output type : String
2806
+ output domain : Unknown
2807
+ output : "QuWhat"
2808
+
2809
+
2810
+ ast : insert('Quadratic', 3, 100, NULL)
2811
+ raw expr : insert("Quadratic", 3_u8, 100_u8, NULL)
2812
+ checked expr : insert<String NULL, Int64 NULL, Int64 NULL, NULL>(CAST("Quadratic" AS String NULL), CAST(3_u8 AS Int64 NULL), CAST(100_u8 AS Int64 NULL), NULL)
2813
+ optimized expr : NULL
2814
+ output type : NULL
2815
+ output domain : {NULL}
2816
+ output : NULL
2817
+
2818
+
2819
+ ast : insert('Quadratic', 3, NULL, 'NULL')
2820
+ raw expr : insert("Quadratic", 3_u8, NULL, "NULL")
2821
+ checked expr : insert<String NULL, Int64 NULL, NULL, String NULL>(CAST("Quadratic" AS String NULL), CAST(3_u8 AS Int64 NULL), NULL, CAST("NULL" AS String NULL))
2822
+ optimized expr : NULL
2823
+ output type : NULL
2824
+ output domain : {NULL}
2825
+ output : NULL
2826
+
2827
+
2828
+ ast : insert('Quadratic', NULL, 100, 'NULL')
2829
+ raw expr : insert("Quadratic", NULL, 100_u8, "NULL")
2830
+ checked expr : insert<String NULL, NULL, Int64 NULL, String NULL>(CAST("Quadratic" AS String NULL), NULL, CAST(100_u8 AS Int64 NULL), CAST("NULL" AS String NULL))
2831
+ optimized expr : NULL
2832
+ output type : NULL
2833
+ output domain : {NULL}
2834
+ output : NULL
2835
+
2836
+
2837
+ ast : insert(NULL, 2, 100, 'NULL')
2838
+ raw expr : insert(NULL, 2_u8, 100_u8, "NULL")
2839
+ checked expr : insert<NULL, Int64 NULL, Int64 NULL, String NULL>(NULL, CAST(2_u8 AS Int64 NULL), CAST(100_u8 AS Int64 NULL), CAST("NULL" AS String NULL))
2840
+ optimized expr : NULL
2841
+ output type : NULL
2842
+ output domain : {NULL}
2843
+ output : NULL
2844
+
2845
+
2846
+ ast : insert(a, b, c, d)
2847
+ raw expr : insert(ColumnRef(0)::String, ColumnRef(1)::UInt8, ColumnRef(2)::UInt8, ColumnRef(3)::String)
2848
+ checked expr : insert<String, Int64, Int64, String>(ColumnRef(0), CAST(ColumnRef(1) AS Int64), CAST(ColumnRef(2) AS Int64), ColumnRef(3))
2849
+ evaluation:
2850
+ +--------+-----------------+---------+---------+---------------+---------+
2851
+ | | a | b | c | d | Output |
2852
+ +--------+-----------------+---------+---------+---------------+---------+
2853
+ | Type | String | UInt8 | UInt8 | String | String |
2854
+ | Domain | {"cc"..="test"} | {1..=4} | {1..=5} | {"12"..="zc"} | Unknown |
2855
+ | Row 0 | "hi" | 1 | 3 | "xx" | "xx" |
2856
+ | Row 1 | "test" | 4 | 5 | "zc" | "teszc" |
2857
+ | Row 2 | "cc" | 1 | 1 | "12" | "12" |
2858
+ | Row 3 | "q" | 1 | 1 | "56" | "56" |
2859
+ +--------+-----------------+---------+---------+---------------+---------+
2860
+ evaluation (internal):
2861
+ +--------+------------------------------------------------------------------------------------------------------+
2862
+ | Column | Data |
2863
+ +--------+------------------------------------------------------------------------------------------------------+
2864
+ | a | StringColumn { data: [104, 105, 116, 101, 115, 116, 99, 99, 113], offsets: [0, 2, 6, 8, 9] } |
2865
+ | b | Int32([1, 4, 1, 1]) |
2866
+ | c | Int32([3, 5, 1, 1]) |
2867
+ | d | StringColumn { data: [120, 120, 122, 99, 49, 50, 53, 54], offsets: [0, 2, 4, 6, 8] } |
2868
+ | Output | StringColumn { data: [120, 120, 116, 101, 115, 122, 99, 49, 50, 53, 54], offsets: [0, 2, 7, 9, 11] } |
2869
+ +--------+------------------------------------------------------------------------------------------------------+
2870
+
2871
+
2872
+ ast : insert(x, y, z, u)
2873
+ raw expr : insert(ColumnRef(0)::String NULL, ColumnRef(1)::UInt8 NULL, ColumnRef(2)::UInt8 NULL, ColumnRef(3)::String NULL)
2874
+ checked expr : insert<String NULL, Int64 NULL, Int64 NULL, String NULL>(ColumnRef(0), CAST(ColumnRef(1) AS Int64 NULL), CAST(ColumnRef(2) AS Int64 NULL), ColumnRef(3))
2875
+ evaluation:
2876
+ +--------+--------------------------+------------------+------------------+------------------------+-------------+
2877
+ | | x | y | z | u | Output |
2878
+ +--------+--------------------------+------------------+------------------+------------------------+-------------+
2879
+ | Type | String NULL | UInt8 NULL | UInt8 NULL | String NULL | String NULL |
2880
+ | Domain | {"cc"..="test"} ∪ {NULL} | {1..=4} ∪ {NULL} | {1..=5} ∪ {NULL} | {"12"..="zc"} ∪ {NULL} | Unknown |
2881
+ | Row 0 | NULL | 1 | 3 | NULL | NULL |
2882
+ | Row 1 | "test" | 4 | NULL | "zc" | NULL |
2883
+ | Row 2 | "cc" | NULL | 1 | "12" | NULL |
2884
+ | Row 3 | "q" | 1 | 1 | "56" | "56" |
2885
+ +--------+--------------------------+------------------+------------------+------------------------+-------------+
2886
+ evaluation (internal):
2887
+ +--------+---------------------------------------------------------------------------------------------------------------------------------------------------------+
2888
+ | Column | Data |
2889
+ +--------+---------------------------------------------------------------------------------------------------------------------------------------------------------+
2890
+ | x | NullableColumn { column: StringColumn { data: [104, 105, 116, 101, 115, 116, 99, 99, 113], offsets: [0, 2, 6, 8, 9] }, validity: [0b____1110] } |
2891
+ | y | NullableColumn { column: Int32([1, 4, 1, 1]), validity: [0b____1011] } |
2892
+ | z | NullableColumn { column: Int32([3, 5, 1, 1]), validity: [0b____1101] } |
2893
+ | u | NullableColumn { column: StringColumn { data: [120, 120, 122, 99, 49, 50, 53, 54], offsets: [0, 2, 4, 6, 8] }, validity: [0b____1110] } |
2894
+ | Output | NullableColumn { column: StringColumn { data: [120, 120, 116, 101, 115, 122, 99, 49, 50, 53, 54], offsets: [0, 2, 7, 9, 11] }, validity: [0b____1000] } |
2895
+ +--------+---------------------------------------------------------------------------------------------------------------------------------------------------------+
2896
+
2897
+
0 commit comments