Cherry-picked from #44877 Co-authored-by: Mryange <yanxuecheng@selectdb.com>
This commit is contained in:
committed by
GitHub
parent
823c24d7b5
commit
dcf3eb3434
@ -72,12 +72,18 @@ AggregateFunctionPtr create_aggregate_function_collect_impl(const std::string& n
|
||||
if (which.is_date_or_datetime()) {
|
||||
return do_create_agg_function_collect<Int64, HasLimit, ShowNull>(distinct, argument_types,
|
||||
result_is_nullable);
|
||||
} else if (which.is_date_v2() || which.is_ipv4()) {
|
||||
} else if (which.is_date_v2()) {
|
||||
return do_create_agg_function_collect<UInt32, HasLimit, ShowNull>(distinct, argument_types,
|
||||
result_is_nullable);
|
||||
} else if (which.is_date_time_v2() || which.is_ipv6()) {
|
||||
} else if (which.is_date_time_v2()) {
|
||||
return do_create_agg_function_collect<UInt64, HasLimit, ShowNull>(distinct, argument_types,
|
||||
result_is_nullable);
|
||||
} else if (which.is_ipv6()) {
|
||||
return do_create_agg_function_collect<IPv6, HasLimit, ShowNull>(distinct, argument_types,
|
||||
result_is_nullable);
|
||||
} else if (which.is_ipv4()) {
|
||||
return do_create_agg_function_collect<IPv4, HasLimit, ShowNull>(distinct, argument_types,
|
||||
result_is_nullable);
|
||||
} else if (which.is_string()) {
|
||||
return do_create_agg_function_collect<StringRef, HasLimit, ShowNull>(
|
||||
distinct, argument_types, result_is_nullable);
|
||||
|
||||
@ -251,3 +251,6 @@
|
||||
8 [{"id":8}, {"id":8}, {"id":8}, {"id":8}]
|
||||
9 [{"id":9}, {"id":9}, {"id":9}, {"id":9}]
|
||||
|
||||
-- !select --
|
||||
[null, "0.0.0.123", "0.0.12.42", "0.119.130.67"] [null, "::855d", "::0.4.221.183", "::a:7429:d0d6:6e08:9f5f"]
|
||||
|
||||
|
||||
@ -277,8 +277,24 @@ suite("array_agg") {
|
||||
order_qt_sql_array_agg_map """ SELECT id, array_agg(km) FROM test_array_agg_complex GROUP BY id ORDER BY id """
|
||||
order_qt_sql_array_agg_struct """ SELECT id, array_agg(ks) FROM test_array_agg_complex GROUP BY id ORDER BY id """
|
||||
|
||||
|
||||
sql """ DROP TABLE IF EXISTS test_array_agg_ip;"""
|
||||
sql """
|
||||
CREATE TABLE test_array_agg_ip(
|
||||
k1 BIGINT ,
|
||||
k4 ipv4 ,
|
||||
k6 ipv6 ,
|
||||
s string
|
||||
) DISTRIBUTED BY HASH(k1) BUCKETS 1 PROPERTIES("replication_num" = "1");
|
||||
"""
|
||||
sql """ insert into test_array_agg_ip values(1,123,34141,"0.0.0.123") , (2,3114,318903,"0.0.0.123") , (3,7832131,192837891738927931231,"2001:0DB8:AC10:FE01:FEED:BABE:CAFE:F00D"),(4,null,null,"2001:0DB8:AC10:FE01:FEED:BABE:CAFE:F00D"); """
|
||||
|
||||
|
||||
qt_select """select array_sort(array_agg(k4)),array_sort(array_agg(k6)) from test_array_agg_ip """
|
||||
|
||||
sql "DROP TABLE `test_array_agg`"
|
||||
sql "DROP TABLE `test_array_agg1`"
|
||||
sql "DROP TABLE `test_array_agg_int`"
|
||||
sql "DROP TABLE `test_array_agg_decimal`"
|
||||
sql "DROP TABLE `test_array_agg_ip`"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user