should be it
This commit is contained in:
194
external/duckdb/test/sql/setops/union_limit.test
vendored
Normal file
194
external/duckdb/test/sql/setops/union_limit.test
vendored
Normal file
@@ -0,0 +1,194 @@
|
||||
# name: test/sql/setops/union_limit.test
|
||||
# description: Test union limit
|
||||
# group: [setops]
|
||||
|
||||
statement ok
|
||||
PRAGMA enable_verification
|
||||
|
||||
query I
|
||||
SELECT 1 UNION ALL SELECT * FROM range(2, 100) UNION ALL SELECT 999 LIMIT 5;
|
||||
----
|
||||
1
|
||||
2
|
||||
3
|
||||
4
|
||||
5
|
||||
|
||||
query I
|
||||
SELECT 'select count(case'a union all select 'when a='||range||' then 1' from range(100) LIMIT 5;
|
||||
----
|
||||
select count(case
|
||||
when a=0 then 1
|
||||
when a=1 then 1
|
||||
when a=2 then 1
|
||||
when a=3 then 1
|
||||
|
||||
query I
|
||||
SELECT STRING_AGG(a, ' ') FROM (SELECT 'select count(case'a union all select 'when a='||range||' then 1' from range(2) union all select 'end) from t') tbl;
|
||||
----
|
||||
select count(case when a=0 then 1 when a=1 then 1 end) from t
|
||||
|
||||
query I
|
||||
SELECT 'select count(case'a union all select 'when a='||range||' then 1' from range(2) union all select 'end) from t' LIMIT 5;
|
||||
----
|
||||
select count(case
|
||||
when a=0 then 1
|
||||
when a=1 then 1
|
||||
end) from t
|
||||
|
||||
query I
|
||||
SELECT 'select count(case'a union all select 'when a='||range||' then 1' from range(100) union all select 'end) from t' LIMIT 5;
|
||||
----
|
||||
select count(case
|
||||
when a=0 then 1
|
||||
when a=1 then 1
|
||||
when a=2 then 1
|
||||
when a=3 then 1
|
||||
|
||||
|
||||
query I
|
||||
SELECT 1
|
||||
UNION ALL
|
||||
(
|
||||
SELECT * FROM generate_series(10, 12, 1)
|
||||
UNION ALL
|
||||
(
|
||||
SELECT * FROM generate_series(100, 103, 1)
|
||||
)
|
||||
UNION ALL
|
||||
SELECT * FROM generate_series(1000, 1002, 1)
|
||||
)
|
||||
UNION ALL
|
||||
SELECT * FROM generate_series(10000, 10002, 1)
|
||||
UNION ALL
|
||||
(
|
||||
SELECT * FROM generate_series(100000, 100002, 1)
|
||||
UNION ALL
|
||||
SELECT * FROM generate_series(1000000, 1000003, 1)
|
||||
);
|
||||
----
|
||||
1
|
||||
10
|
||||
11
|
||||
12
|
||||
100
|
||||
101
|
||||
102
|
||||
103
|
||||
1000
|
||||
1001
|
||||
1002
|
||||
10000
|
||||
10001
|
||||
10002
|
||||
100000
|
||||
100001
|
||||
100002
|
||||
1000000
|
||||
1000001
|
||||
1000002
|
||||
1000003
|
||||
|
||||
query I
|
||||
SELECT ARRAY_AGG(1)
|
||||
UNION ALL
|
||||
(
|
||||
SELECT ARRAY_AGG(i) FROM generate_series(10, 12, 1) tbl(i)
|
||||
UNION ALL
|
||||
(
|
||||
SELECT ARRAY_AGG(i) FROM generate_series(100, 103, 1) tbl(i)
|
||||
)
|
||||
UNION ALL
|
||||
SELECT ARRAY_AGG(i) FROM generate_series(1000, 1002, 1) tbl(i)
|
||||
)
|
||||
UNION ALL
|
||||
SELECT ARRAY_AGG(i) FROM generate_series(10000, 10002, 1) tbl(i)
|
||||
UNION ALL
|
||||
(
|
||||
SELECT ARRAY_AGG(i) FROM generate_series(100000, 100002, 1) tbl(i)
|
||||
UNION ALL
|
||||
SELECT ARRAY_AGG(i) FROM generate_series(1000000, 1000003, 1) tbl(i)
|
||||
);
|
||||
----
|
||||
[1]
|
||||
[10, 11, 12]
|
||||
[100, 101, 102, 103]
|
||||
[1000, 1001, 1002]
|
||||
[10000, 10001, 10002]
|
||||
[100000, 100001, 100002]
|
||||
[1000000, 1000001, 1000002, 1000003]
|
||||
|
||||
|
||||
query I
|
||||
SELECT 1
|
||||
UNION ALL
|
||||
(
|
||||
SELECT * FROM generate_series(10, 12, 1)
|
||||
UNION ALL
|
||||
(
|
||||
SELECT * FROM generate_series(100, 103, 1)
|
||||
)
|
||||
UNION ALL
|
||||
SELECT * FROM generate_series(1000, 1002, 1)
|
||||
)
|
||||
UNION ALL
|
||||
SELECT * FROM generate_series(10000, 10002, 1)
|
||||
UNION ALL
|
||||
(
|
||||
SELECT * FROM generate_series(100000, 100002, 1)
|
||||
UNION ALL
|
||||
SELECT * FROM generate_series(1000000, 1000003, 1)
|
||||
)
|
||||
LIMIT 1000;
|
||||
----
|
||||
1
|
||||
10
|
||||
11
|
||||
12
|
||||
100
|
||||
101
|
||||
102
|
||||
103
|
||||
1000
|
||||
1001
|
||||
1002
|
||||
10000
|
||||
10001
|
||||
10002
|
||||
100000
|
||||
100001
|
||||
100002
|
||||
1000000
|
||||
1000001
|
||||
1000002
|
||||
1000003
|
||||
|
||||
query I
|
||||
SELECT ARRAY_AGG(1)
|
||||
UNION ALL
|
||||
(
|
||||
SELECT ARRAY_AGG(i) FROM generate_series(10, 12, 1) tbl(i)
|
||||
UNION ALL
|
||||
(
|
||||
SELECT ARRAY_AGG(i) FROM generate_series(100, 103, 1) tbl(i)
|
||||
)
|
||||
UNION ALL
|
||||
SELECT ARRAY_AGG(i) FROM generate_series(1000, 1002, 1) tbl(i)
|
||||
)
|
||||
UNION ALL
|
||||
SELECT ARRAY_AGG(i) FROM generate_series(10000, 10002, 1) tbl(i)
|
||||
UNION ALL
|
||||
(
|
||||
SELECT ARRAY_AGG(i) FROM generate_series(100000, 100002, 1) tbl(i)
|
||||
UNION ALL
|
||||
SELECT ARRAY_AGG(i) FROM generate_series(1000000, 1000003, 1) tbl(i)
|
||||
)
|
||||
LIMIT 1000;
|
||||
----
|
||||
[1]
|
||||
[10, 11, 12]
|
||||
[100, 101, 102, 103]
|
||||
[1000, 1001, 1002]
|
||||
[10000, 10001, 10002]
|
||||
[100000, 100001, 100002]
|
||||
[1000000, 1000001, 1000002, 1000003]
|
||||
Reference in New Issue
Block a user