cf2ad7ae36
FossilOrigin-Name: 22d280a5cd395abbedcfffbac3d3b3a614c327be25763ca380c1338a2a7bd33a
35137 lines
1.2 MiB
35137 lines
1.2 MiB
# 2022-05-04
|
|
# revised 2022-05-31
|
|
#
|
|
# The author disclaims copyright to this source code. In place of
|
|
# a legal notice, here is a blessing:
|
|
#
|
|
# May you do good and not evil.
|
|
# May you find forgiveness for yourself and forgive others.
|
|
# May you share freely, never taking more than you give.
|
|
#
|
|
#***********************************************************************
|
|
#
|
|
# TESTRUNNER: slow
|
|
#
|
|
# This file implements tests for JOINs that use Bloom filters.
|
|
#
|
|
# The test case output is (mostly) all generated by PostgreSQL 14. This
|
|
# test module was created as follows:
|
|
#
|
|
# 1. Run a TCL script (included at the bottom of this file) that
|
|
# generates an input script for "psql" that will run man
|
|
# diverse tests on joins.
|
|
#
|
|
# 2. Run the script from step (1) through psql and collect the
|
|
# output.
|
|
#
|
|
# 3. Make a few minor global search-and-replace operations to convert
|
|
# the psql output into a form suitable for this test module.
|
|
#
|
|
# 4. Add this header, and the script content at the footer.
|
|
#
|
|
# A few extra tests that were not generated from postgresql output are
|
|
# added at the end.
|
|
#
|
|
set testdir [file dirname $argv0]
|
|
source $testdir/tester.tcl
|
|
db nullvalue -
|
|
db eval {
|
|
CREATE TABLE t1(a INT, b INT, c INT, d INT);
|
|
WITH RECURSIVE c(x) AS (VALUES(0) UNION ALL SELECT x+1 FROM c WHERE x<95)
|
|
INSERT INTO t1(a,b,c,d) SELECT x, x+100, x+200, x+300 FROM c;
|
|
CREATE TABLE t2(b INT, x INT);
|
|
INSERT INTO t2(b,x) SELECT b, a FROM t1 WHERE a%2=0;
|
|
CREATE INDEX t2b ON t2(b);
|
|
CREATE TABLE t3(c INT, y INT);
|
|
INSERT INTO t3(c,y) SELECT c, a FROM t1 WHERE a%3=0;
|
|
CREATE INDEX t3c ON t3(c);
|
|
CREATE TABLE t4(d INT, z INT);
|
|
INSERT INTO t4(d,z) SELECT d, a FROM t1 WHERE a%5=0;
|
|
CREATE INDEX t4d ON t4(d);
|
|
INSERT INTO t1(a,b,c,d) VALUES
|
|
(96,NULL,296,396),
|
|
(97,197,NULL,397),
|
|
(98,198,298,NULL),
|
|
(99,NULL,NULL,NULL);
|
|
ANALYZE;
|
|
}
|
|
do_execsql_test joinD-1 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-2 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-3 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-4 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-5 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON true
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-6 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-7 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-8 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-9 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-10 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-11 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-12 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-13 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-14 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-15 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-16 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-17 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-18 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-19 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-20 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-21 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-22 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-23 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-24 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON true
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-25 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-26 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-27 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-28 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-29 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-30 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-31 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-32 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-33 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-34 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-35 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-36 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-37 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-38 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-39 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-40 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-41 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-42 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-43 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON true
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-44 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-45 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-46 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-47 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-48 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-49 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-50 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-51 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-52 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-53 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-54 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-55 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-56 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-57 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-58 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-59 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-60 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-61 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-62 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON true
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-63 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-64 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-65 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-66 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-67 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-68 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-69 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-70 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-71 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-72 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-73 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-74 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d = t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-75 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-76 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-77 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-78 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-79 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-80 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-81 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON true
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-82 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-83 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-84 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-85 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-86 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-87 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-88 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-89 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-90 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-91 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-92 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-93 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-94 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-95 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-96 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-97 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-98 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-99 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-100 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON true
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-101 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-102 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-103 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-104 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-105 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-106 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-107 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-108 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-109 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-110 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-111 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-112 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-113 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-114 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-115 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-116 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-117 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-118 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-119 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON true
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-120 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-121 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-122 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-123 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-124 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-125 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-126 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-127 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-128 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-129 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-130 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-131 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-132 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-133 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-134 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-135 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-136 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-137 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-138 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON true
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-139 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-140 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-141 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-142 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-143 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-144 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-145 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-146 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-147 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-148 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-149 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-150 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d = t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-151 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-152 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-153 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-154 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-155 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-156 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-157 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON true
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-158 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-159 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-160 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-161 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-162 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-163 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-164 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-165 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-166 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-167 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-168 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-169 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-170 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-171 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-172 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-173 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-174 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-175 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-176 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON true
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-177 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-178 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-179 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-180 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-181 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-182 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-183 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-184 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-185 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-186 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-187 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-188 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-189 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-190 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-191 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-192 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-193 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-194 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-195 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON true
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-196 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-197 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-198 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-199 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-200 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-201 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-202 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-203 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-204 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-205 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-206 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-207 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-208 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-209 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-210 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-211 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-212 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-213 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-214 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON true
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-215 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-216 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-217 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-218 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-219 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-220 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-221 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-222 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-223 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-224 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-225 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-226 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d = t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-227 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-228 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-229 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-230 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-231 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-232 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-233 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON true
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-234 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-235 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-236 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-237 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-238 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-239 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-240 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-241 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-242 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-243 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-244 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c = t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-245 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-246 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-247 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-248 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-249 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-250 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-251 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON true
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-252 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-253 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-254 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-255 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-256 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-257 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-258 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-259 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-260 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-261 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-262 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c = t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-263 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-264 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-265 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-266 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-267 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-268 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-269 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON true
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-270 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-271 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-272 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-273 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-274 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-275 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-276 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-277 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-278 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-279 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-280 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c = t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-281 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-282 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-283 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-284 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-285 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-286 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-287 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON true
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-288 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-289 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-290 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-291 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-292 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-293 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-294 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-295 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-296 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-297 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-298 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c = t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-299 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d = t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-300 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 INNER JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-301 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-302 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-303 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-304 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-305 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON true
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-306 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-307 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-308 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-309 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-310 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-311 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-312 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-313 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-314 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-315 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-316 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-317 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-318 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-319 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-320 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-321 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-322 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-323 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-324 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON true
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-325 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-326 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-327 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-328 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-329 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-330 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-331 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-332 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-333 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-334 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-335 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-336 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-337 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-338 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-339 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-340 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-341 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-342 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-343 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON true
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-344 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-345 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-346 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-347 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-348 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-349 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-350 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-351 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-352 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-353 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-354 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-355 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-356 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-357 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-358 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-359 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-360 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-361 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-362 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON true
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-363 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-364 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-365 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-366 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-367 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-368 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-369 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-370 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-371 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-372 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-373 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-374 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d = t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-375 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-376 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-377 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-378 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-379 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-380 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-381 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON true
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-382 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-383 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-384 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-385 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-386 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-387 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-388 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-389 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-390 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-391 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-392 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-393 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-394 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-395 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-396 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
}
|
|
do_execsql_test joinD-397 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
}
|
|
do_execsql_test joinD-398 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-399 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
}
|
|
do_execsql_test joinD-400 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON true
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-401 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-402 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
}
|
|
do_execsql_test joinD-403 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-404 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
}
|
|
do_execsql_test joinD-405 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-406 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-407 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-408 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-409 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
}
|
|
do_execsql_test joinD-410 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-411 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-412 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-413 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
}
|
|
do_execsql_test joinD-414 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
}
|
|
do_execsql_test joinD-415 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-416 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-417 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-418 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-419 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON true
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-420 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-421 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-422 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-423 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-424 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-425 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-426 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-427 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-428 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-429 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-430 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-431 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-432 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-433 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-434 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-435 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-436 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-437 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-438 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON true
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-439 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-440 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-441 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-442 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
}
|
|
do_execsql_test joinD-443 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-444 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-445 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-446 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-447 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-448 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-449 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-450 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d = t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-451 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-452 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-453 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-454 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-455 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-456 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-457 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON true
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-458 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-459 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-460 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-461 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-462 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-463 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-464 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-465 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-466 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-467 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-468 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-469 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-470 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-471 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-472 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-473 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-474 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-475 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-476 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON true
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-477 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-478 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-479 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-480 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-481 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-482 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-483 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-484 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-485 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-486 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-487 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-488 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-489 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-490 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-491 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-492 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-493 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-494 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-495 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON true
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-496 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-497 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-498 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-499 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-500 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-501 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-502 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-503 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-504 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-505 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-506 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-507 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-508 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-509 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-510 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-511 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-512 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-513 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-514 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON true
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-515 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-516 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-517 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-518 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-519 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-520 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-521 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-522 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-523 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-524 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-525 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-526 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d = t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-527 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-528 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-529 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-530 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-531 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-532 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-533 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON true
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-534 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-535 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-536 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-537 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-538 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-539 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-540 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-541 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-542 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-543 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-544 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c = t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-545 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-546 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-547 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-548 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-549 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-550 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-551 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON true
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-552 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-553 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
}
|
|
do_execsql_test joinD-554 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-555 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-556 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-557 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-558 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-559 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-560 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-561 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-562 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c = t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-563 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-564 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-565 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-566 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-567 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-568 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-569 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON true
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-570 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-571 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-572 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-573 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-574 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-575 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-576 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-577 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-578 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-579 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-580 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c = t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-581 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-582 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-583 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-584 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-585 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-586 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-587 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON true
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-588 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-589 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-590 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-591 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-592 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-593 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-594 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-595 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-596 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-597 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-598 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c = t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-599 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d = t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-600 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 LEFT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-601 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-602 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-603 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-604 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-605 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON true
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-606 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-607 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-608 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-609 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-610 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-611 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-612 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-613 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-614 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-615 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-616 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-617 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-618 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-619 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-620 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-621 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-622 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-623 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-624 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON true
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-625 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-626 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-627 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-628 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-629 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-630 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-631 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-632 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-633 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-634 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-635 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-636 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-637 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-638 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-639 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-640 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-641 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-642 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-643 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON true
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-644 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-645 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-646 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-647 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-648 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-649 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-650 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-651 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-652 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-653 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-654 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-655 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-656 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-657 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-658 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-659 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-660 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-661 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-662 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON true
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-663 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-664 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-665 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-666 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-667 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-668 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-669 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-670 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-671 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-672 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-673 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-674 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d = t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-675 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-676 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-677 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-678 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-679 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-680 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-681 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON true
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-682 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-683 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-684 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-685 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-686 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-687 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-688 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-689 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-690 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-691 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-692 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-693 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-694 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-695 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-696 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
}
|
|
do_execsql_test joinD-697 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
}
|
|
do_execsql_test joinD-698 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-699 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-700 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON true
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-701 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-702 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
}
|
|
do_execsql_test joinD-703 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-704 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
}
|
|
do_execsql_test joinD-705 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-706 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-707 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-708 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-709 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
}
|
|
do_execsql_test joinD-710 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-711 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-712 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-713 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
}
|
|
do_execsql_test joinD-714 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
}
|
|
do_execsql_test joinD-715 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-716 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-717 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-718 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-719 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON true
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-720 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-721 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-722 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-723 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-724 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-725 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-726 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-727 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-728 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-729 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-730 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-731 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-732 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-733 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-734 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-735 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-736 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-737 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-738 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON true
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-739 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-740 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-741 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-742 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-743 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-744 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-745 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-746 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-747 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-748 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-749 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-750 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d = t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-751 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-752 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-753 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-754 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-755 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-756 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-757 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON true
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-758 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-759 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-760 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-761 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-762 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-763 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-764 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-765 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-766 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-767 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-768 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-769 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-770 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-771 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-772 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-773 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-774 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-775 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-776 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON true
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-777 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-778 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-779 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-780 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-781 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-782 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-783 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-784 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-785 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-786 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-787 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-788 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-789 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-790 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-791 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-792 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-793 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-794 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-795 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON true
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-796 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-797 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-798 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-799 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-800 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-801 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-802 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-803 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-804 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-805 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-806 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-807 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-808 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-809 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-810 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-811 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-812 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-813 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-814 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON true
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-815 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-816 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-817 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-818 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-819 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-820 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-821 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-822 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-823 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-824 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-825 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-826 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d = t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-827 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-828 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-829 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-830 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-831 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-832 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-833 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON true
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-834 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-835 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-836 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-837 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-838 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-839 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-840 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-841 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-842 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-843 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-844 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c = t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-845 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-846 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-847 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-848 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-849 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-850 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-851 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON true
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-852 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-853 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-854 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-855 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-856 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-857 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-858 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-859 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-860 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-861 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-862 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c = t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-863 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-864 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-865 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-866 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-867 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-868 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-869 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON true
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-870 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-871 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-872 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-873 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-874 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-875 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-876 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-877 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-878 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-879 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-880 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c = t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-881 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-882 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-883 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-884 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-885 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-886 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-887 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON true
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-888 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-889 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-890 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-891 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-892 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-893 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-894 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-895 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-896 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-897 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-898 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.c = t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-899 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t4.z>0
|
|
WHERE t1.b IS NOT DISTINCT FROM t2.b AND t1.d = t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-900 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 RIGHT JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - 203 3 - -
|
|
- - - - - - 209 9 - -
|
|
- - - - - - 215 15 - -
|
|
- - - - - - 221 21 - -
|
|
- - - - - - 227 27 - -
|
|
- - - - - - 233 33 - -
|
|
- - - - - - 239 39 - -
|
|
- - - - - - 245 45 - -
|
|
- - - - - - 251 51 - -
|
|
- - - - - - 257 57 - -
|
|
- - - - - - 263 63 - -
|
|
- - - - - - 269 69 - -
|
|
- - - - - - 275 75 - -
|
|
- - - - - - 281 81 - -
|
|
- - - - - - 287 87 - -
|
|
- - - - - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 315 15
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 345 45
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 375 75
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-901 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-902 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-903 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-904 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON true
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-905 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-906 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-907 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-908 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-909 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-910 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-911 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-912 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-913 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b = t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-914 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-915 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-916 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t4.z>0
|
|
WHERE t1.b = t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-917 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-918 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-919 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-920 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-921 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON true
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-922 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-923 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-924 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-925 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-926 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-927 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-928 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-929 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-930 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b = t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-931 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-932 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-933 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t4.z>0
|
|
WHERE t1.b = t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-934 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-935 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-936 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-937 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-938 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON true
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-939 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-940 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-941 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-942 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-943 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-944 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-945 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-946 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-947 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b = t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-948 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-949 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-950 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t4.z>0
|
|
WHERE t1.b = t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-951 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-952 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-953 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-954 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-955 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON true
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-956 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-957 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-958 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-959 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-960 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-961 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-962 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-963 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
INNER JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-964 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b = t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-965 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-966 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-967 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
INNER JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t4.z>0
|
|
WHERE t1.b = t2.b AND t1.d = t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-968 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
INNER JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-969 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-970 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-971 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-972 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON true
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-973 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-974 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-975 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-976 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-977 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-978 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-979 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-980 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-981 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b = t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-982 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-983 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-984 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t4.z>0
|
|
WHERE t1.b = t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-985 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-986 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - 100 0 - - - -
|
|
}
|
|
do_execsql_test joinD-987 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-988 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
}
|
|
do_execsql_test joinD-989 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON true
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-990 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-991 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - 100 0 - - - -
|
|
}
|
|
do_execsql_test joinD-992 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-993 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - 100 0 - - - -
|
|
}
|
|
do_execsql_test joinD-994 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-995 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-996 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-997 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-998 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b = t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - 100 0 - - - -
|
|
}
|
|
do_execsql_test joinD-999 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-1000 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1001 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t4.z>0
|
|
WHERE t1.b = t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1002 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - 100 0 - - - -
|
|
}
|
|
do_execsql_test joinD-1003 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-1004 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1005 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-1006 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON true
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1007 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1008 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-1009 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1010 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1011 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1012 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1013 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1014 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1015 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b = t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-1016 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1017 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1018 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t4.z>0
|
|
WHERE t1.b = t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1019 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-1020 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-1021 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-1022 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-1023 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON true
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-1024 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-1025 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-1026 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1027 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - 100 0 - - - -
|
|
}
|
|
do_execsql_test joinD-1028 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1029 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1030 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1031 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
LEFT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1032 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b = t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-1033 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-1034 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1035 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
LEFT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t4.z>0
|
|
WHERE t1.b = t2.b AND t1.d = t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1036 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
LEFT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-1037 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1038 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1039 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1040 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON true
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1041 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1042 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1043 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1044 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1045 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1046 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1047 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1048 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1049 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b = t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1050 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1051 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1052 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t4.z>0
|
|
WHERE t1.b = t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1053 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1054 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-1055 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1056 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-1057 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON true
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1058 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-1059 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-1060 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1061 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-1062 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1063 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1064 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1065 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1066 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b = t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-1067 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1068 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1069 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t4.z>0
|
|
WHERE t1.b = t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1070 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-1071 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1072 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1073 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1074 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON true
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1075 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1076 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1077 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1078 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1079 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1080 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1081 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1082 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1083 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b = t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1084 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1085 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1086 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t4.z>0
|
|
WHERE t1.b = t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1087 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1088 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1089 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1090 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1091 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON true
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1092 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-1093 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1094 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1095 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1096 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1097 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1098 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1099 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
RIGHT JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1100 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b = t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1101 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1102 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b AND t1.c IS NOT DISTINCT FROM t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1103 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IS NOT DISTINCT FROM t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t4.z>0
|
|
WHERE t1.b = t2.b AND t1.d = t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1104 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
- - - - - - - - 305 5
|
|
- - - - - - - - 310 10
|
|
- - - - - - - - 320 20
|
|
- - - - - - - - 325 25
|
|
- - - - - - - - 335 35
|
|
- - - - - - - - 340 40
|
|
- - - - - - - - 350 50
|
|
- - - - - - - - 355 55
|
|
- - - - - - - - 365 65
|
|
- - - - - - - - 370 70
|
|
- - - - - - - - 380 80
|
|
- - - - - - - - 385 85
|
|
- - - - - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1105 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1106 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1107 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1108 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON true
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1109 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1110 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1111 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1112 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1113 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1114 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1115 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1116 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
INNER JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1117 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b = t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1118 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1119 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t3.y>0
|
|
INNER JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b AND t1.c = t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1120 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
INNER JOIN t4 ON t4.z>0
|
|
WHERE t1.b = t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1121 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-1122 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-1123 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-1124 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON true
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-1125 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-1126 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - 100 0 - - - -
|
|
}
|
|
do_execsql_test joinD-1127 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1128 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-1129 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1130 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1131 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1132 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
LEFT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1133 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b = t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-1134 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-1135 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t3.y>0
|
|
LEFT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b AND t1.c = t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1136 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t4.z>0
|
|
WHERE t1.b = t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1137 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-1138 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1139 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-1140 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON true
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1141 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1142 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-1143 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1144 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1145 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1146 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1147 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1148 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
RIGHT JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1149 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b = t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-1150 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1151 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t3.y>0
|
|
RIGHT JOIN t4 ON t1.d IS NOT DISTINCT FROM t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b AND t1.c = t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1152 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
RIGHT JOIN t4 ON t4.z>0
|
|
WHERE t1.b = t2.b AND t1.d IS NOT DISTINCT FROM t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1153 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-1154 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-1155 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE (t2.x>0 OR t2.x IS NULL)
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-1156 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON true
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t1.b=t2.b AND t2.x>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-1157 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
3 103 203 303 - - 203 3 - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
9 109 209 309 - - 209 9 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
18 118 218 318 118 18 218 18 - -
|
|
21 121 221 321 - - 221 21 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
27 127 227 327 - - 227 27 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
33 133 233 333 - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
39 139 239 339 - - 239 39 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
48 148 248 348 148 48 248 48 - -
|
|
51 151 251 351 - - 251 51 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
57 157 257 357 - - 257 57 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
63 163 263 363 - - 263 63 - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
69 169 269 369 - - 269 69 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
78 178 278 378 178 78 278 78 - -
|
|
81 181 281 381 - - 281 81 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
87 187 287 387 - - 287 87 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
93 193 293 393 - - 293 93 - -
|
|
}
|
|
do_execsql_test joinD-1158 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t3.y>0 OR t3.y IS NULL
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-1159 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
5 105 205 305 - - - - 305 5
|
|
10 110 210 310 110 10 - - 310 10
|
|
15 115 215 315 - - 215 15 315 15
|
|
20 120 220 320 120 20 - - 320 20
|
|
25 125 225 325 - - - - 325 25
|
|
30 130 230 330 130 30 230 30 330 30
|
|
35 135 235 335 - - - - 335 35
|
|
40 140 240 340 140 40 - - 340 40
|
|
45 145 245 345 - - 245 45 345 45
|
|
50 150 250 350 150 50 - - 350 50
|
|
55 155 255 355 - - - - 355 55
|
|
60 160 260 360 160 60 260 60 360 60
|
|
65 165 265 365 - - - - 365 65
|
|
70 170 270 370 170 70 - - 370 70
|
|
75 175 275 375 - - 275 75 375 75
|
|
80 180 280 380 180 80 - - 380 80
|
|
85 185 285 385 - - - - 385 85
|
|
90 190 290 390 190 90 290 90 390 90
|
|
95 195 295 395 - - - - 395 95
|
|
}
|
|
do_execsql_test joinD-1160 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z IS NULL OR t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - 200 0 - -
|
|
}
|
|
do_execsql_test joinD-1161 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1162 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t4.z>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
15 115 215 315 - - 215 15 315 15
|
|
30 130 230 330 130 30 230 30 330 30
|
|
45 145 245 345 - - 245 45 345 45
|
|
60 160 260 360 160 60 260 60 360 60
|
|
75 175 275 375 - - 275 75 375 75
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1163 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d AND t4.z>0
|
|
WHERE t2.x>0 AND t3.y>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1164 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b=t2.b
|
|
FULL JOIN t3 ON t1.c=t3.c
|
|
FULL JOIN t4 ON t1.d=t4.d
|
|
WHERE t2.x>0 AND t3.y>0 AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
60 160 260 360 160 60 260 60 360 60
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1165 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t1.b = t2.b AND t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
0 100 200 300 - - - - - -
|
|
1 101 201 301 - - - - - -
|
|
2 102 202 302 102 2 - - - -
|
|
3 103 203 303 - - 203 3 - -
|
|
4 104 204 304 104 4 - - - -
|
|
5 105 205 305 - - - - 305 5
|
|
6 106 206 306 106 6 206 6 - -
|
|
7 107 207 307 - - - - - -
|
|
8 108 208 308 108 8 - - - -
|
|
9 109 209 309 - - 209 9 - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
11 111 211 311 - - - - - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
13 113 213 313 - - - - - -
|
|
14 114 214 314 114 14 - - - -
|
|
15 115 215 315 - - 215 15 315 15
|
|
16 116 216 316 116 16 - - - -
|
|
17 117 217 317 - - - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
19 119 219 319 - - - - - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
21 121 221 321 - - 221 21 - -
|
|
22 122 222 322 122 22 - - - -
|
|
23 123 223 323 - - - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
25 125 225 325 - - - - 325 25
|
|
26 126 226 326 126 26 - - - -
|
|
27 127 227 327 - - 227 27 - -
|
|
28 128 228 328 128 28 - - - -
|
|
29 129 229 329 - - - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
31 131 231 331 - - - - - -
|
|
32 132 232 332 132 32 - - - -
|
|
33 133 233 333 - - 233 33 - -
|
|
34 134 234 334 134 34 - - - -
|
|
35 135 235 335 - - - - 335 35
|
|
36 136 236 336 136 36 236 36 - -
|
|
37 137 237 337 - - - - - -
|
|
38 138 238 338 138 38 - - - -
|
|
39 139 239 339 - - 239 39 - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
41 141 241 341 - - - - - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
43 143 243 343 - - - - - -
|
|
44 144 244 344 144 44 - - - -
|
|
45 145 245 345 - - 245 45 345 45
|
|
46 146 246 346 146 46 - - - -
|
|
47 147 247 347 - - - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
49 149 249 349 - - - - - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
51 151 251 351 - - 251 51 - -
|
|
52 152 252 352 152 52 - - - -
|
|
53 153 253 353 - - - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
55 155 255 355 - - - - 355 55
|
|
56 156 256 356 156 56 - - - -
|
|
57 157 257 357 - - 257 57 - -
|
|
58 158 258 358 158 58 - - - -
|
|
59 159 259 359 - - - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
61 161 261 361 - - - - - -
|
|
62 162 262 362 162 62 - - - -
|
|
63 163 263 363 - - 263 63 - -
|
|
64 164 264 364 164 64 - - - -
|
|
65 165 265 365 - - - - 365 65
|
|
66 166 266 366 166 66 266 66 - -
|
|
67 167 267 367 - - - - - -
|
|
68 168 268 368 168 68 - - - -
|
|
69 169 269 369 - - 269 69 - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
71 171 271 371 - - - - - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
73 173 273 373 - - - - - -
|
|
74 174 274 374 174 74 - - - -
|
|
75 175 275 375 - - 275 75 375 75
|
|
76 176 276 376 176 76 - - - -
|
|
77 177 277 377 - - - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
79 179 279 379 - - - - - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
81 181 281 381 - - 281 81 - -
|
|
82 182 282 382 182 82 - - - -
|
|
83 183 283 383 - - - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
85 185 285 385 - - - - 385 85
|
|
86 186 286 386 186 86 - - - -
|
|
87 187 287 387 - - 287 87 - -
|
|
88 188 288 388 188 88 - - - -
|
|
89 189 289 389 - - - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
91 191 291 391 - - - - - -
|
|
92 192 292 392 192 92 - - - -
|
|
93 193 293 393 - - 293 93 - -
|
|
94 194 294 394 194 94 - - - -
|
|
95 195 295 395 - - - - 395 95
|
|
96 - 296 396 - - - - - -
|
|
97 197 - 397 - - - - - -
|
|
98 198 298 - - - - - - -
|
|
99 - - - - - - - - -
|
|
- - - - 100 0 - - - -
|
|
- - - - - - 200 0 - -
|
|
- - - - - - - - 300 0
|
|
}
|
|
do_execsql_test joinD-1166 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
2 102 202 302 102 2 - - - -
|
|
4 104 204 304 104 4 - - - -
|
|
6 106 206 306 106 6 206 6 - -
|
|
8 108 208 308 108 8 - - - -
|
|
10 110 210 310 110 10 - - 310 10
|
|
12 112 212 312 112 12 212 12 - -
|
|
14 114 214 314 114 14 - - - -
|
|
16 116 216 316 116 16 - - - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
20 120 220 320 120 20 - - 320 20
|
|
22 122 222 322 122 22 - - - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
26 126 226 326 126 26 - - - -
|
|
28 128 228 328 128 28 - - - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
32 132 232 332 132 32 - - - -
|
|
34 134 234 334 134 34 - - - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
38 138 238 338 138 38 - - - -
|
|
40 140 240 340 140 40 - - 340 40
|
|
42 142 242 342 142 42 242 42 - -
|
|
44 144 244 344 144 44 - - - -
|
|
46 146 246 346 146 46 - - - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
50 150 250 350 150 50 - - 350 50
|
|
52 152 252 352 152 52 - - - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
56 156 256 356 156 56 - - - -
|
|
58 158 258 358 158 58 - - - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
62 162 262 362 162 62 - - - -
|
|
64 164 264 364 164 64 - - - -
|
|
66 166 266 366 166 66 266 66 - -
|
|
68 168 268 368 168 68 - - - -
|
|
70 170 270 370 170 70 - - 370 70
|
|
72 172 272 372 172 72 272 72 - -
|
|
74 174 274 374 174 74 - - - -
|
|
76 176 276 376 176 76 - - - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
80 180 280 380 180 80 - - 380 80
|
|
82 182 282 382 182 82 - - - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
86 186 286 386 186 86 - - - -
|
|
88 188 288 388 188 88 - - - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
92 192 292 392 192 92 - - - -
|
|
94 194 294 394 194 94 - - - -
|
|
}
|
|
do_execsql_test joinD-1167 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t3.y>0
|
|
FULL JOIN t4 ON t1.d = t4.d AND t4.z>0
|
|
WHERE t1.b = t2.b AND t1.c = t3.c
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
6 106 206 306 106 6 206 6 - -
|
|
12 112 212 312 112 12 212 12 - -
|
|
18 118 218 318 118 18 218 18 - -
|
|
24 124 224 324 124 24 224 24 - -
|
|
30 130 230 330 130 30 230 30 330 30
|
|
36 136 236 336 136 36 236 36 - -
|
|
42 142 242 342 142 42 242 42 - -
|
|
48 148 248 348 148 48 248 48 - -
|
|
54 154 254 354 154 54 254 54 - -
|
|
60 160 260 360 160 60 260 60 360 60
|
|
66 166 266 366 166 66 266 66 - -
|
|
72 172 272 372 172 72 272 72 - -
|
|
78 178 278 378 178 78 278 78 - -
|
|
84 184 284 384 184 84 284 84 - -
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
do_execsql_test joinD-1168 {
|
|
SELECT t1.*, t2.*, t3.*, t4.*
|
|
FROM t1 FULL JOIN t2 ON t2.x>0
|
|
FULL JOIN t3 ON t1.c = t3.c AND t3.y>0
|
|
FULL JOIN t4 ON t4.z>0
|
|
WHERE t1.b = t2.b AND t1.d = t4.d
|
|
ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);
|
|
} {
|
|
10 110 210 310 110 10 - - 310 10
|
|
20 120 220 320 120 20 - - 320 20
|
|
30 130 230 330 130 30 230 30 330 30
|
|
40 140 240 340 140 40 - - 340 40
|
|
50 150 250 350 150 50 - - 350 50
|
|
60 160 260 360 160 60 260 60 360 60
|
|
70 170 270 370 170 70 - - 370 70
|
|
80 180 280 380 180 80 - - 380 80
|
|
90 190 290 390 190 90 290 90 390 90
|
|
}
|
|
#############################################################################
|
|
# The following are extra tests added manually
|
|
do_execsql_test joinD-extra-1000 {
|
|
CREATE VIEW v1 AS
|
|
SELECT *
|
|
FROM t1 INNER JOIN t2 ON t1.b=t2.b AND t2.x>0
|
|
RIGHT JOIN t3 ON t1.c=t3.c AND t3.y>0
|
|
LEFT JOIN t4 ON t1.d=t4.d AND t4.z>0;
|
|
CREATE TRIGGER v1r1 INSTEAD OF UPDATE OF c ON v1 BEGIN
|
|
UPDATE t1 SET c=new.c WHERE (a,b,c,d) IS (old.a,old.b,old.c,old.d);
|
|
UPDATE t3 SET c=new.c WHERE (c,y) IS (old.c,old.y);
|
|
END;
|
|
SELECT * FROM v1 WHERE y BETWEEN 30 AND 40 ORDER BY y;
|
|
} {
|
|
30 130 230 330 130 30 230 30 330 30
|
|
- - - - - - 233 33 - -
|
|
36 136 236 336 136 36 236 36 - -
|
|
- - - - - - 239 39 - -
|
|
}
|
|
do_execsql_test joinD-extra-1010 {
|
|
BEGIN;
|
|
UPDATE v1 SET c=c+1000 WHERE y BETWEEN 30 and 40;
|
|
SELECT * FROM v1 WHERE y BETWEEN 30 AND 40 ORDER BY y;
|
|
ROLLBACK;
|
|
} {
|
|
30 130 1230 330 130 30 1230 30 330 30
|
|
- - - - - - 233 33 - -
|
|
36 136 1236 336 136 36 1236 36 - -
|
|
- - - - - - 239 39 - -
|
|
}
|
|
finish_test
|
|
#############################################################################
|
|
# This is the TCL script used to generate the psql script that generated
|
|
# the data above.
|
|
#
|
|
# puts "
|
|
# \\pset border off
|
|
# \\pset tuples_only on
|
|
# \\pset null -
|
|
#
|
|
# DROP TABLE IF EXISTS t1;
|
|
# DROP TABLE IF EXISTS t2;
|
|
# DROP TABLE IF EXISTS t3;
|
|
# DROP TABLE IF EXISTS t4;
|
|
# CREATE TABLE t1(a INT, b INT, c INT, d INT);
|
|
# WITH RECURSIVE c(x) AS (VALUES(0) UNION ALL SELECT x+1 FROM c WHERE x<95)
|
|
# INSERT INTO t1(a,b,c,d) SELECT x, x+100, x+200, x+300 FROM c;
|
|
# CREATE TABLE t2(b INT, x INT);
|
|
# INSERT INTO t2(b,x) SELECT b, a FROM t1 WHERE a%2=0;
|
|
# CREATE INDEX t2b ON t2(b);
|
|
# CREATE TABLE t3(c INT, y INT);
|
|
# INSERT INTO t3(c,y) SELECT c, a FROM t1 WHERE a%3=0;
|
|
# CREATE INDEX t3c ON t3(c);
|
|
# CREATE TABLE t4(d INT, z INT);
|
|
# INSERT INTO t4(d,z) SELECT d, a FROM t1 WHERE a%5=0;
|
|
# CREATE INDEX t4d ON t4(d);
|
|
# INSERT INTO t1(a,b,c,d) VALUES
|
|
# (96,NULL,296,396),
|
|
# (97,197,NULL,397),
|
|
# (98,198,298,NULL),
|
|
# (99,NULL,NULL,NULL);
|
|
# "
|
|
#
|
|
# proc echo {prefix txt} {
|
|
# regsub -all {\n} $txt \n$prefix txt
|
|
# puts "$prefix$txt"
|
|
# }
|
|
#
|
|
# set n 0
|
|
# foreach j1 {INNER LEFT RIGHT FULL} {
|
|
# foreach j2 {INNER LEFT RIGHT FULL} {
|
|
# foreach j3 {INNER LEFT RIGHT FULL} {
|
|
#
|
|
# incr n
|
|
# set q1 ""
|
|
# append q1 "SELECT t1.*, t2.*, t3.*, t4.*\n"
|
|
# append q1 " FROM t1 $j1 JOIN t2 ON t1.b=t2.b AND t2.x>0\n"
|
|
# append q1 " $j2 JOIN t3 ON t1.c=t3.c AND t3.y>0\n"
|
|
# append q1 " $j3 JOIN t4 ON t1.d=t4.d AND t4.z>0\n"
|
|
# append q1 " ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);"
|
|
#
|
|
# echo "\\qecho " "do_execsql_test joinB-$n \{"
|
|
# echo "\\qecho X " $q1
|
|
# echo "\\qecho " "\} \{"
|
|
# puts $q1
|
|
# echo "\\qecho " "\}"
|
|
#
|
|
# if {$j1!="FULL"} {
|
|
# incr n
|
|
# set q1 ""
|
|
# append q1 "SELECT t1.*, t2.*, t3.*, t4.*\n"
|
|
# append q1 " FROM t1 $j1 JOIN t2 ON t1.b IS NOT DISTINCT FROM t2.b AND t2.x>0\n"
|
|
# append q1 " $j2 JOIN t3 ON t1.c=t3.c AND t3.y>0\n"
|
|
# append q1 " $j3 JOIN t4 ON t1.d=t4.d AND t4.z>0\n"
|
|
# append q1 " ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);"
|
|
#
|
|
# echo "\\qecho " "do_execsql_test joinB-$n \{"
|
|
# echo "\\qecho X " $q1
|
|
# echo "\\qecho " "\} \{"
|
|
# puts $q1
|
|
# echo "\\qecho " "\}"
|
|
# }
|
|
#
|
|
# incr n
|
|
# set q1 ""
|
|
# append q1 "SELECT t1.*, t2.*, t3.*, t4.*\n"
|
|
# append q1 " FROM t1 $j1 JOIN t2 ON t1.b=t2.b\n"
|
|
# append q1 " $j2 JOIN t3 ON t1.c=t3.c AND t3.y>0\n"
|
|
# append q1 " $j3 JOIN t4 ON t1.d=t4.d AND t4.z>0\n"
|
|
# append q1 " WHERE t2.x>0\n"
|
|
# append q1 " ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);"
|
|
#
|
|
# echo "\\qecho " "do_execsql_test joinB-$n \{"
|
|
# echo "\\qecho X " $q1
|
|
# echo "\\qecho " "\} \{"
|
|
# puts $q1
|
|
# echo "\\qecho " "\}"
|
|
#
|
|
# incr n
|
|
# set q1 ""
|
|
# append q1 "SELECT t1.*, t2.*, t3.*, t4.*\n"
|
|
# append q1 " FROM t1 $j1 JOIN t2 ON t1.b=t2.b\n"
|
|
# append q1 " $j2 JOIN t3 ON t1.c=t3.c AND t3.y>0\n"
|
|
# append q1 " $j3 JOIN t4 ON t1.d=t4.d AND t4.z>0\n"
|
|
# append q1 " WHERE (t2.x>0 OR t2.x IS NULL)\n"
|
|
# append q1 " ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);"
|
|
#
|
|
# echo "\\qecho " "do_execsql_test joinB-$n \{"
|
|
# echo "\\qecho X " $q1
|
|
# echo "\\qecho " "\} \{"
|
|
# puts $q1
|
|
# echo "\\qecho " "\}"
|
|
#
|
|
# incr n
|
|
# set q1 ""
|
|
# append q1 "SELECT t1.*, t2.*, t3.*, t4.*\n"
|
|
# append q1 " FROM t1 $j1 JOIN t2 ON true\n"
|
|
# append q1 " $j2 JOIN t3 ON t1.c=t3.c AND t3.y>0\n"
|
|
# append q1 " $j3 JOIN t4 ON t1.d=t4.d AND t4.z>0\n"
|
|
# append q1 " WHERE t1.b=t2.b AND t2.x>0\n"
|
|
# append q1 " ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);"
|
|
#
|
|
# echo "\\qecho " "do_execsql_test joinB-$n \{"
|
|
# echo "\\qecho X " $q1
|
|
# echo "\\qecho " "\} \{"
|
|
# puts $q1
|
|
# echo "\\qecho " "\}"
|
|
#
|
|
# incr n
|
|
# set q1 ""
|
|
# append q1 "SELECT t1.*, t2.*, t3.*, t4.*\n"
|
|
# append q1 " FROM t1 $j1 JOIN t2 ON t1.b=t2.b AND t2.x>0\n"
|
|
# append q1 " $j2 JOIN t3 ON t1.c=t3.c\n"
|
|
# append q1 " $j3 JOIN t4 ON t1.d=t4.d AND t4.z>0\n"
|
|
# append q1 " WHERE t3.y>0\n"
|
|
# append q1 " ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);"
|
|
#
|
|
# echo "\\qecho " "do_execsql_test joinB-$n \{"
|
|
# echo "\\qecho X " $q1
|
|
# echo "\\qecho " "\} \{"
|
|
# puts $q1
|
|
# echo "\\qecho " "\}"
|
|
#
|
|
# incr n
|
|
# set q1 ""
|
|
# append q1 "SELECT t1.*, t2.*, t3.*, t4.*\n"
|
|
# append q1 " FROM t1 $j1 JOIN t2 ON t1.b=t2.b AND t2.x>0\n"
|
|
# append q1 " $j2 JOIN t3 ON t1.c=t3.c\n"
|
|
# append q1 " $j3 JOIN t4 ON t1.d=t4.d AND t4.z>0\n"
|
|
# append q1 " WHERE t3.y>0 OR t3.y IS NULL\n"
|
|
# append q1 " ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);"
|
|
#
|
|
# echo "\\qecho " "do_execsql_test joinB-$n \{"
|
|
# echo "\\qecho X " $q1
|
|
# echo "\\qecho " "\} \{"
|
|
# puts $q1
|
|
# echo "\\qecho " "\}"
|
|
#
|
|
# incr n
|
|
# set q1 ""
|
|
# append q1 "SELECT t1.*, t2.*, t3.*, t4.*\n"
|
|
# append q1 " FROM t1 $j1 JOIN t2 ON t1.b=t2.b AND t2.x>0\n"
|
|
# append q1 " $j2 JOIN t3 ON t1.c=t3.c AND t3.y>0\n"
|
|
# append q1 " $j3 JOIN t4 ON t1.d=t4.d\n"
|
|
# append q1 " WHERE t4.z>0\n"
|
|
# append q1 " ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);"
|
|
#
|
|
# echo "\\qecho " "do_execsql_test joinB-$n \{"
|
|
# echo "\\qecho X " $q1
|
|
# echo "\\qecho " "\} \{"
|
|
# puts $q1
|
|
# echo "\\qecho " "\}"
|
|
#
|
|
# incr n
|
|
# set q1 ""
|
|
# append q1 "SELECT t1.*, t2.*, t3.*, t4.*\n"
|
|
# append q1 " FROM t1 $j1 JOIN t2 ON t1.b=t2.b AND t2.x>0\n"
|
|
# append q1 " $j2 JOIN t3 ON t1.c=t3.c AND t3.y>0\n"
|
|
# append q1 " $j3 JOIN t4 ON t1.d=t4.d\n"
|
|
# append q1 " WHERE t4.z IS NULL OR t4.z>0\n"
|
|
# append q1 " ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);"
|
|
#
|
|
# echo "\\qecho " "do_execsql_test joinB-$n \{"
|
|
# echo "\\qecho X " $q1
|
|
# echo "\\qecho " "\} \{"
|
|
# puts $q1
|
|
# echo "\\qecho " "\}"
|
|
#
|
|
# incr n
|
|
# set q1 ""
|
|
# append q1 "SELECT t1.*, t2.*, t3.*, t4.*\n"
|
|
# append q1 " FROM t1 $j1 JOIN t2 ON t1.b=t2.b\n"
|
|
# append q1 " $j2 JOIN t3 ON t1.c=t3.c AND t3.y>0\n"
|
|
# append q1 " $j3 JOIN t4 ON t1.d=t4.d\n"
|
|
# append q1 " WHERE t2.x>0 AND t4.z>0\n"
|
|
# append q1 " ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);"
|
|
#
|
|
# echo "\\qecho " "do_execsql_test joinB-$n \{"
|
|
# echo "\\qecho X " $q1
|
|
# echo "\\qecho " "\} \{"
|
|
# puts $q1
|
|
# echo "\\qecho " "\}"
|
|
#
|
|
# incr n
|
|
# set q1 ""
|
|
# append q1 "SELECT t1.*, t2.*, t3.*, t4.*\n"
|
|
# append q1 " FROM t1 $j1 JOIN t2 ON t1.b=t2.b AND t2.x>0\n"
|
|
# append q1 " $j2 JOIN t3 ON t1.c=t3.c\n"
|
|
# append q1 " $j3 JOIN t4 ON t1.d=t4.d\n"
|
|
# append q1 " WHERE t4.z>0 AND t3.y>0\n"
|
|
# append q1 " ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);"
|
|
#
|
|
# echo "\\qecho " "do_execsql_test joinB-$n \{"
|
|
# echo "\\qecho X " $q1
|
|
# echo "\\qecho " "\} \{"
|
|
# puts $q1
|
|
# echo "\\qecho " "\}"
|
|
#
|
|
# incr n
|
|
# set q1 ""
|
|
# append q1 "SELECT t1.*, t2.*, t3.*, t4.*\n"
|
|
# append q1 " FROM t1 $j1 JOIN t2 ON t1.b=t2.b\n"
|
|
# append q1 " $j2 JOIN t3 ON t1.c=t3.c\n"
|
|
# append q1 " $j3 JOIN t4 ON t1.d=t4.d AND t4.z>0\n"
|
|
# append q1 " WHERE t2.x>0 AND t3.y>0\n"
|
|
# append q1 " ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);"
|
|
#
|
|
# echo "\\qecho " "do_execsql_test joinB-$n \{"
|
|
# echo "\\qecho X " $q1
|
|
# echo "\\qecho " "\} \{"
|
|
# puts $q1
|
|
# echo "\\qecho " "\}"
|
|
#
|
|
# incr n
|
|
# set q1 ""
|
|
# append q1 "SELECT t1.*, t2.*, t3.*, t4.*\n"
|
|
# append q1 " FROM t1 $j1 JOIN t2 ON t1.b=t2.b\n"
|
|
# append q1 " $j2 JOIN t3 ON t1.c=t3.c\n"
|
|
# append q1 " $j3 JOIN t4 ON t1.d=t4.d\n"
|
|
# append q1 " WHERE t2.x>0 AND t3.y>0 AND t4.z>0\n"
|
|
# append q1 " ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);"
|
|
#
|
|
# echo "\\qecho " "do_execsql_test joinB-$n \{"
|
|
# echo "\\qecho X " $q1
|
|
# echo "\\qecho " "\} \{"
|
|
# puts $q1
|
|
# echo "\\qecho " "\}"
|
|
#
|
|
# set op1 [expr {$j1=="FULL"?"=":"IS NOT DISTINCT FROM"}]
|
|
# set op2 [expr {$j2=="FULL"?"=":"IS NOT DISTINCT FROM"}]
|
|
# set op3 [expr {$j3=="FULL"?"=":"IS NOT DISTINCT FROM"}]
|
|
# incr n
|
|
# set q1 ""
|
|
# append q1 "SELECT t1.*, t2.*, t3.*, t4.*\n"
|
|
# append q1 " FROM t1 $j1 JOIN t2 ON t1.b $op1 t2.b AND t2.x>0\n"
|
|
# append q1 " $j2 JOIN t3 ON t1.c $op2 t3.c AND t3.y>0\n"
|
|
# append q1 " $j3 JOIN t4 ON t1.d $op3 t4.d AND t4.z>0\n"
|
|
# append q1 " ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);"
|
|
#
|
|
# echo "\\qecho " "do_execsql_test joinB-$n \{"
|
|
# echo "\\qecho X " $q1
|
|
# echo "\\qecho " "\} \{"
|
|
# puts $q1
|
|
# echo "\\qecho " "\}"
|
|
#
|
|
# incr n
|
|
# set q1 ""
|
|
# append q1 "SELECT t1.*, t2.*, t3.*, t4.*\n"
|
|
# append q1 " FROM t1 $j1 JOIN t2 ON t2.x>0\n"
|
|
# append q1 " $j2 JOIN t3 ON t1.c $op2 t3.c AND t3.y>0\n"
|
|
# append q1 " $j3 JOIN t4 ON t1.d $op3 t4.d AND t4.z>0\n"
|
|
# append q1 " WHERE t1.b $op1 t2.b\n"
|
|
# append q1 " ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);"
|
|
#
|
|
# echo "\\qecho " "do_execsql_test joinB-$n \{"
|
|
# echo "\\qecho X " $q1
|
|
# echo "\\qecho " "\} \{"
|
|
# puts $q1
|
|
# echo "\\qecho " "\}"
|
|
#
|
|
# incr n
|
|
# set q1 ""
|
|
# append q1 "SELECT t1.*, t2.*, t3.*, t4.*\n"
|
|
# append q1 " FROM t1 $j1 JOIN t2 ON t2.x>0\n"
|
|
# append q1 " $j2 JOIN t3 ON t3.y>0\n"
|
|
# append q1 " $j3 JOIN t4 ON t1.d $op3 t4.d AND t4.z>0\n"
|
|
# append q1 " WHERE t1.b $op1 t2.b AND t1.c $op2 t3.c\n"
|
|
# append q1 " ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);"
|
|
#
|
|
# echo "\\qecho " "do_execsql_test joinB-$n \{"
|
|
# echo "\\qecho X " $q1
|
|
# echo "\\qecho " "\} \{"
|
|
# puts $q1
|
|
# echo "\\qecho " "\}"
|
|
#
|
|
# incr n
|
|
# set q1 ""
|
|
# append q1 "SELECT t1.*, t2.*, t3.*, t4.*\n"
|
|
# append q1 " FROM t1 $j1 JOIN t2 ON t2.x>0\n"
|
|
# append q1 " $j2 JOIN t3 ON t1.c $op2 t3.c AND t3.y>0\n"
|
|
# append q1 " $j3 JOIN t4 ON t4.z>0\n"
|
|
# append q1 " WHERE t1.b $op1 t2.b AND t1.d $op3 t4.d\n"
|
|
# append q1 " ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);"
|
|
#
|
|
# echo "\\qecho " "do_execsql_test joinB-$n \{"
|
|
# echo "\\qecho X " $q1
|
|
# echo "\\qecho " "\} \{"
|
|
# puts $q1
|
|
# echo "\\qecho " "\}"
|
|
#
|
|
# if {$j1!="FULL"} {
|
|
# incr n
|
|
# set q1 ""
|
|
# append q1 "SELECT t1.*, t2.*, t3.*, t4.*\n"
|
|
# append q1 " FROM t1 $j1 JOIN t2 ON t1.b IN (t2.b,-2,-3) AND t2.x>0\n"
|
|
# append q1 " $j2 JOIN t3 ON t1.c=t3.c AND t3.y>0\n"
|
|
# append q1 " $j3 JOIN t4 ON t1.d=t4.d AND t4.z>0\n"
|
|
# append q1 " ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);"
|
|
#
|
|
# echo "\\qecho " "do_execsql_test joinB-$n \{"
|
|
# echo "\\qecho X " $q1
|
|
# echo "\\qecho " "\} \{"
|
|
# puts $q1
|
|
# echo "\\qecho " "\}"
|
|
# }
|
|
#
|
|
# if {$j2!="FULL"} {
|
|
# incr n
|
|
# set q1 ""
|
|
# append q1 "SELECT t1.*, t2.*, t3.*, t4.*\n"
|
|
# append q1 " FROM t1 $j1 JOIN t2 ON t1.b=t2.b AND t2.x>0\n"
|
|
# append q1 " $j2 JOIN t3 ON t1.c IN (-4,t3.c,-5) AND t3.y>0\n"
|
|
# append q1 " $j3 JOIN t4 ON t1.d=t4.d AND t4.z>0\n"
|
|
# append q1 " ORDER BY coalesce(t1.a,t2.b,t3.c,t4.d,0);"
|
|
#
|
|
# echo "\\qecho " "do_execsql_test joinB-$n \{"
|
|
# echo "\\qecho X " $q1
|
|
# echo "\\qecho " "\} \{"
|
|
# puts $q1
|
|
# echo "\\qecho " "\}"
|
|
# }
|
|
# }
|
|
# }
|
|
# }
|
|
#
|