1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120
|
# name: test/sql/limit/test_parallel_limit.test_slow
# description: Test parallel limit execution
# group: [limit]
statement ok
PRAGMA enable_verification
statement ok
PRAGMA threads=8
statement ok
CREATE TABLE other_table AS SELECT 337 i UNION ALL SELECT 948247 UNION ALL SELECT 1779793 UNION ALL SELECT 4779793;
foreach table_type TABLE VIEW
statement ok
CREATE ${table_type} integers AS SELECT * FROM range(10000000) tbl(i);
query I
SELECT * FROM integers LIMIT 5
----
0
1
2
3
4
query I
SELECT * FROM integers WHERE i>1978321 OR i=334 LIMIT 5
----
334
1978322
1978323
1978324
1978325
query I
SELECT * FROM integers WHERE i>1978321 LIMIT 5
----
1978322
1978323
1978324
1978325
1978326
query I
SELECT * FROM integers WHERE i>4978321 LIMIT 5
----
4978322
4978323
4978324
4978325
4978326
# large offset
query I
SELECT * FROM integers WHERE i>4978321 LIMIT 5 OFFSET 100000;
----
5078322
5078323
5078324
5078325
5078326
query I
SELECT * FROM integers WHERE i>4978321 LIMIT 5 OFFSET 1000000;
----
5978322
5978323
5978324
5978325
5978326
# insertion order preservation with window functions
query II
SELECT i, lead(i, 1) over () FROM integers LIMIT 5 OFFSET 4978321;
----
4978321 4978322
4978322 4978323
4978323 4978324
4978324 4978325
4978325 4978326
# large lead
query II
SELECT i, lead(i, 100000) over () FROM integers LIMIT 5 OFFSET 4978321;
----
4978321 5078321
4978322 5078322
4978323 5078323
4978324 5078324
4978325 5078325
# IN-clause (semi join)
query I sort
SELECT * FROM integers WHERE i IN (SELECT * FROM other_table)
----
1779793
337
4779793
948247
query I
(SELECT * FROM integers WHERE i>1978321 LIMIT 5) UNION ALL (SELECT * FROM integers WHERE i>4978321 LIMIT 5)
----
1978322
1978323
1978324
1978325
1978326
4978322
4978323
4978324
4978325
4978326
statement ok
DROP ${table_type} integers
endloop
|