blob: baaeae677e919ae223290dd13b4a6f8832df5df2 [file] [log] [blame]
set testdir [file dirname $argv0]
# 2022-04-19
#
# 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.
#
#***********************************************************************
#
# This file implements tests for JOINs.
#
# The test case output is 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.
#
source $testdir/tester.tcl
db nullvalue -
db eval {
DROP TABLE IF EXISTS t1;
DROP TABLE IF EXISTS t2;
DROP TABLE IF EXISTS t3;
DROP TABLE IF EXISTS t4;
DROP TABLE IF EXISTS t5;
CREATE TABLE t1(a INT, b INT, c INT);
CREATE TABLE t2(a INT, b INT, d INT);
CREATE TABLE t3(a INT, b INT, e INT);
CREATE TABLE t4(a INT, b INT, f INT);
CREATE TABLE t5(a INT, b INT, g INT);
INSERT INTO t1 VALUES(11,21,31),(12,22,32),(15,25,35),(17,27,37);
INSERT INTO t2 VALUES(12,22,32),(13,23,33),(15,25,35),(18,28,38),
(NULL,NULL,36);
INSERT INTO t4 VALUES(11,21,31),(13,23,33),(15,25,35),(19,29,39);
INSERT INTO t3 SELECT * FROM t1 UNION SELECT * FROM t2 UNION SELECT * FROM t4;
INSERT INTO t5 SELECT * FROM t3 WHERE a>=15;
}
do_execsql_test joinB-1 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
INNER JOIN t3 USING(a)
INNER JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
}
do_execsql_test joinB-2 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
}
do_execsql_test joinB-3 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
INNER JOIN t3 USING(a)
INNER JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
}
do_execsql_test joinB-4 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
}
do_execsql_test joinB-5 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
INNER JOIN t3 USING(a)
INNER JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-6 {
SELECT a, b, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - - - 39
}
do_execsql_test joinB-7 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
INNER JOIN t3 USING(a)
INNER JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-8 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL INNER JOIN t2
NATURAL INNER JOIN t3
NATURAL INNER JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-9 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
INNER JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
}
do_execsql_test joinB-10 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
}
do_execsql_test joinB-11 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
INNER JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
12 12 12 12 - -
15 15 15 15 15 15
}
do_execsql_test joinB-12 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
12 32 32 32 - -
15 35 35 35 35 35
}
do_execsql_test joinB-13 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
INNER JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-14 {
SELECT a, b, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - - - 39
}
do_execsql_test joinB-15 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
INNER JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
12 12 12 12 - -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-16 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL INNER JOIN t2
NATURAL INNER JOIN t3
NATURAL LEFT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-17 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
INNER JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - - 19 19
}
do_execsql_test joinB-18 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - - 39 39
}
do_execsql_test joinB-19 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
INNER JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - - 11 -
13 - - - 13 -
15 15 15 15 15 15
19 - - - 19 19
}
do_execsql_test joinB-20 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 - - - 31 -
13 - - - 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-21 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
INNER JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-22 {
SELECT a, b, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - - 39 39
}
do_execsql_test joinB-23 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
INNER JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - - 11 -
13 - - - 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-24 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL INNER JOIN t2
NATURAL INNER JOIN t3
NATURAL RIGHT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-25 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
INNER JOIN t3 USING(a)
FULL JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - - 19 19
}
do_execsql_test joinB-26 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - - 39 39
}
do_execsql_test joinB-27 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
INNER JOIN t3 USING(a)
FULL JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - - 11 -
12 12 12 12 - -
13 - - - 13 -
15 15 15 15 15 15
19 - - - 19 19
}
do_execsql_test joinB-28 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 - - - 31 -
12 32 32 32 - -
13 - - - 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-29 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
INNER JOIN t3 USING(a)
FULL JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-30 {
SELECT a, b, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - - 39 39
}
do_execsql_test joinB-31 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
INNER JOIN t3 USING(a)
FULL JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - - 11 -
12 12 12 12 - -
13 - - - 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-32 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL INNER JOIN t2
NATURAL INNER JOIN t3
NATURAL FULL JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-33 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
}
do_execsql_test joinB-34 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
}
do_execsql_test joinB-35 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
}
do_execsql_test joinB-36 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
}
do_execsql_test joinB-37 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-38 {
SELECT a, b, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - - - 39
}
do_execsql_test joinB-39 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-40 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL INNER JOIN t2
NATURAL LEFT JOIN t3
NATURAL INNER JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-41 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
}
do_execsql_test joinB-42 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
}
do_execsql_test joinB-43 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
12 12 12 12 - -
15 15 15 15 15 15
}
do_execsql_test joinB-44 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
12 32 32 32 - -
15 35 35 35 35 35
}
do_execsql_test joinB-45 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-46 {
SELECT a, b, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - - - 39
}
do_execsql_test joinB-47 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
12 12 12 12 - -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-48 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL INNER JOIN t2
NATURAL LEFT JOIN t3
NATURAL LEFT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-49 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - - 19 19
}
do_execsql_test joinB-50 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - - 39 39
}
do_execsql_test joinB-51 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - - 11 -
13 - - - 13 -
15 15 15 15 15 15
19 - - - 19 19
}
do_execsql_test joinB-52 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 - - - 31 -
13 - - - 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-53 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-54 {
SELECT a, b, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - - 39 39
}
do_execsql_test joinB-55 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - - 11 -
13 - - - 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-56 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL INNER JOIN t2
NATURAL LEFT JOIN t3
NATURAL RIGHT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-57 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - - 19 19
}
do_execsql_test joinB-58 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - - 39 39
}
do_execsql_test joinB-59 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - - 11 -
12 12 12 12 - -
13 - - - 13 -
15 15 15 15 15 15
19 - - - 19 19
}
do_execsql_test joinB-60 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 - - - 31 -
12 32 32 32 - -
13 - - - 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-61 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-62 {
SELECT a, b, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - - 39 39
}
do_execsql_test joinB-63 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - - 11 -
12 12 12 12 - -
13 - - - 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-64 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL INNER JOIN t2
NATURAL LEFT JOIN t3
NATURAL FULL JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-65 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-66 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - 39 39 39
}
do_execsql_test joinB-67 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - 11 11 -
13 - - 13 13 -
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-68 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
15 35 35 35 35 35
}
do_execsql_test joinB-69 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-70 {
SELECT a, b, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-71 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - 11 11 -
13 - - 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-72 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL INNER JOIN t2
NATURAL RIGHT JOIN t3
NATURAL INNER JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-73 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-74 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 - - 37 - 37
18 - - 38 - 38
19 - - 39 39 39
}
do_execsql_test joinB-75 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 - - 11 11 -
12 12 12 12 - -
13 - - 13 13 -
15 15 15 15 15 15
17 - - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-76 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
12 32 32 32 - -
15 35 35 35 35 35
17 37 - 37 - -
}
do_execsql_test joinB-77 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-78 {
SELECT a, b, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - 37 - 37
18 28 - - 38 - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-79 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 - - 11 11 -
12 12 12 12 - -
13 - - 13 13 -
15 15 15 15 15 15
17 - - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-80 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL INNER JOIN t2
NATURAL RIGHT JOIN t3
NATURAL LEFT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-81 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-82 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - 39 39 39
}
do_execsql_test joinB-83 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - 11 11 -
13 - - 13 13 -
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-84 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
13 - - - 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-85 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-86 {
SELECT a, b, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-87 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - 11 11 -
13 - - 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-88 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL INNER JOIN t2
NATURAL RIGHT JOIN t3
NATURAL RIGHT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-89 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-90 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 - - 37 - 37
18 - - 38 - 38
19 - - 39 39 39
}
do_execsql_test joinB-91 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 - - 11 11 -
12 12 12 12 - -
13 - - 13 13 -
15 15 15 15 15 15
17 - - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-92 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
12 32 32 32 - -
13 - - - 33 -
15 35 35 35 35 35
17 37 - 37 - -
}
do_execsql_test joinB-93 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-94 {
SELECT a, b, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - 37 - 37
18 28 - - 38 - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-95 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 - - 11 11 -
12 12 12 12 - -
13 - - 13 13 -
15 15 15 15 15 15
17 - - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-96 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL INNER JOIN t2
NATURAL RIGHT JOIN t3
NATURAL FULL JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-97 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
FULL JOIN t3 USING(a)
INNER JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-98 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - 39 39 39
}
do_execsql_test joinB-99 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
FULL JOIN t3 USING(a)
INNER JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - 11 11 -
13 - - 13 13 -
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-100 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
15 35 35 35 35 35
}
do_execsql_test joinB-101 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
FULL JOIN t3 USING(a)
INNER JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-102 {
SELECT a, b, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-103 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
FULL JOIN t3 USING(a)
INNER JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - 11 11 -
13 - - 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-104 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL INNER JOIN t2
NATURAL FULL JOIN t3
NATURAL INNER JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-105 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
FULL JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-106 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 - - 37 - 37
18 - - 38 - 38
19 - - 39 39 39
}
do_execsql_test joinB-107 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
FULL JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 - - 11 11 -
12 12 12 12 - -
13 - - 13 13 -
15 15 15 15 15 15
17 - - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-108 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
12 32 32 32 - -
15 35 35 35 35 35
17 37 - 37 - -
}
do_execsql_test joinB-109 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
FULL JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-110 {
SELECT a, b, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - 37 - 37
18 28 - - 38 - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-111 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
FULL JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 - - 11 11 -
12 12 12 12 - -
13 - - 13 13 -
15 15 15 15 15 15
17 - - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-112 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL INNER JOIN t2
NATURAL FULL JOIN t3
NATURAL LEFT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-113 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
FULL JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-114 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - 39 39 39
}
do_execsql_test joinB-115 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
FULL JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - 11 11 -
13 - - 13 13 -
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-116 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
13 - - - 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-117 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
FULL JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-118 {
SELECT a, b, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-119 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
FULL JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - 11 11 -
13 - - 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-120 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL INNER JOIN t2
NATURAL FULL JOIN t3
NATURAL RIGHT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-121 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
FULL JOIN t3 USING(a)
FULL JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-122 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 - - 37 - 37
18 - - 38 - 38
19 - - 39 39 39
}
do_execsql_test joinB-123 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
FULL JOIN t3 USING(a)
FULL JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 - - 11 11 -
12 12 12 12 - -
13 - - 13 13 -
15 15 15 15 15 15
17 - - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-124 {
SELECT a, c, d, e, f, g
FROM t1
INNER JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
12 32 32 32 - -
13 - - - 33 -
15 35 35 35 35 35
17 37 - 37 - -
}
do_execsql_test joinB-125 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
FULL JOIN t3 USING(a)
FULL JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-126 {
SELECT a, b, c, d, e, f, g
FROM t1
INNER JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - 37 - 37
18 28 - - 38 - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-127 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
INNER JOIN t2 USING(a)
FULL JOIN t3 USING(a)
FULL JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 - - 11 11 -
12 12 12 12 - -
13 - - 13 13 -
15 15 15 15 15 15
17 - - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-128 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL INNER JOIN t2
NATURAL FULL JOIN t3
NATURAL FULL JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-129 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
INNER JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
}
do_execsql_test joinB-130 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
}
do_execsql_test joinB-131 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
INNER JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
15 15 15 15 15 15
}
do_execsql_test joinB-132 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - - 31 -
15 35 35 35 35 35
}
do_execsql_test joinB-133 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
INNER JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-134 {
SELECT a, b, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - - - 39
}
do_execsql_test joinB-135 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
INNER JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-136 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL LEFT JOIN t2
NATURAL INNER JOIN t3
NATURAL INNER JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-137 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
}
do_execsql_test joinB-138 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 37 - 37 - 37
}
do_execsql_test joinB-139 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
12 12 12 12 - -
15 15 15 15 15 15
17 17 - 17 - 17
}
do_execsql_test joinB-140 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - - 31 -
12 32 32 32 - -
15 35 35 35 35 35
17 37 - - - -
}
do_execsql_test joinB-141 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-142 {
SELECT a, b, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 37 - 37 - 37
18 28 - - - - 38
19 29 - - - - 39
}
do_execsql_test joinB-143 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
12 12 12 12 - -
15 15 15 15 15 15
17 17 - 17 - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-144 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL LEFT JOIN t2
NATURAL INNER JOIN t3
NATURAL LEFT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-145 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - - 19 19
}
do_execsql_test joinB-146 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - - 39 39
}
do_execsql_test joinB-147 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - - - 13 -
15 15 15 15 15 15
19 - - - 19 19
}
do_execsql_test joinB-148 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - - 31 -
13 - - - 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-149 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-150 {
SELECT a, b, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - - 39 39
}
do_execsql_test joinB-151 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - - - 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-152 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL LEFT JOIN t2
NATURAL INNER JOIN t3
NATURAL RIGHT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-153 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
FULL JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
19 - - - 19 19
}
do_execsql_test joinB-154 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 37 - 37 - 37
19 - - - 39 39
}
do_execsql_test joinB-155 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
FULL JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
12 12 12 12 - -
13 - - - 13 -
15 15 15 15 15 15
17 17 - 17 - 17
19 - - - 19 19
}
do_execsql_test joinB-156 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - - 31 -
12 32 32 32 - -
13 - - - 33 -
15 35 35 35 35 35
17 37 - - - -
}
do_execsql_test joinB-157 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
FULL JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-158 {
SELECT a, b, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 37 - 37 - 37
18 28 - - - - 38
19 29 - - - 39 39
}
do_execsql_test joinB-159 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
FULL JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
12 12 12 12 - -
13 - - - 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-160 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL LEFT JOIN t2
NATURAL INNER JOIN t3
NATURAL FULL JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-161 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
}
do_execsql_test joinB-162 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
}
do_execsql_test joinB-163 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
15 15 15 15 15 15
}
do_execsql_test joinB-164 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - - 31 -
15 35 35 35 35 35
}
do_execsql_test joinB-165 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-166 {
SELECT a, b, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - - - 39
}
do_execsql_test joinB-167 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-168 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL LEFT JOIN t2
NATURAL LEFT JOIN t3
NATURAL INNER JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-169 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
}
do_execsql_test joinB-170 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 37 - 37 - 37
}
do_execsql_test joinB-171 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
12 12 12 12 - -
15 15 15 15 15 15
17 17 - 17 - 17
}
do_execsql_test joinB-172 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - - 31 -
12 32 32 32 - -
15 35 35 35 35 35
17 37 - - - -
}
do_execsql_test joinB-173 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-174 {
SELECT a, b, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 37 - 37 - 37
18 28 - - - - 38
19 29 - - - - 39
}
do_execsql_test joinB-175 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
12 12 12 12 - -
15 15 15 15 15 15
17 17 - 17 - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-176 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL LEFT JOIN t2
NATURAL LEFT JOIN t3
NATURAL LEFT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-177 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - - 19 19
}
do_execsql_test joinB-178 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - - 39 39
}
do_execsql_test joinB-179 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - - - 13 -
15 15 15 15 15 15
19 - - - 19 19
}
do_execsql_test joinB-180 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - - 31 -
13 - - - 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-181 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-182 {
SELECT a, b, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - - 39 39
}
do_execsql_test joinB-183 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - - - 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-184 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL LEFT JOIN t2
NATURAL LEFT JOIN t3
NATURAL RIGHT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-185 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
19 - - - 19 19
}
do_execsql_test joinB-186 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 37 - 37 - 37
19 - - - 39 39
}
do_execsql_test joinB-187 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
12 12 12 12 - -
13 - - - 13 -
15 15 15 15 15 15
17 17 - 17 - 17
19 - - - 19 19
}
do_execsql_test joinB-188 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - - 31 -
12 32 32 32 - -
13 - - - 33 -
15 35 35 35 35 35
17 37 - - - -
}
do_execsql_test joinB-189 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-190 {
SELECT a, b, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 37 - 37 - 37
18 28 - - - - 38
19 29 - - - 39 39
}
do_execsql_test joinB-191 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
12 12 12 12 - -
13 - - - 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-192 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL LEFT JOIN t2
NATURAL LEFT JOIN t3
NATURAL FULL JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-193 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-194 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - 39 39 39
}
do_execsql_test joinB-195 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - - 13 13 -
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-196 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
15 35 35 35 35 35
}
do_execsql_test joinB-197 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-198 {
SELECT a, b, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-199 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - - 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-200 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL LEFT JOIN t2
NATURAL RIGHT JOIN t3
NATURAL INNER JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-201 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-202 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 37 - 37 - 37
18 - - 38 - 38
19 - - 39 39 39
}
do_execsql_test joinB-203 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 11 - 11 11 -
12 12 12 12 - -
13 - - 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-204 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
12 32 32 32 - -
15 35 35 35 35 35
17 37 - 37 - -
}
do_execsql_test joinB-205 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-206 {
SELECT a, b, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 37 - 37 - 37
18 28 - - 38 - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-207 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 11 - 11 11 -
12 12 12 12 - -
13 - - 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-208 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL LEFT JOIN t2
NATURAL RIGHT JOIN t3
NATURAL LEFT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-209 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-210 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - 39 39 39
}
do_execsql_test joinB-211 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - - 13 13 -
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-212 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
13 - - - 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-213 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-214 {
SELECT a, b, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-215 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - - 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-216 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL LEFT JOIN t2
NATURAL RIGHT JOIN t3
NATURAL RIGHT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-217 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-218 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 37 - 37 - 37
18 - - 38 - 38
19 - - 39 39 39
}
do_execsql_test joinB-219 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 11 - 11 11 -
12 12 12 12 - -
13 - - 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-220 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
12 32 32 32 - -
13 - - - 33 -
15 35 35 35 35 35
17 37 - 37 - -
}
do_execsql_test joinB-221 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-222 {
SELECT a, b, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 37 - 37 - 37
18 28 - - 38 - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-223 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 11 - 11 11 -
12 12 12 12 - -
13 - - 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-224 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL LEFT JOIN t2
NATURAL RIGHT JOIN t3
NATURAL FULL JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-225 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
INNER JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-226 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - 39 39 39
}
do_execsql_test joinB-227 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
INNER JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - - 13 13 -
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-228 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
15 35 35 35 35 35
}
do_execsql_test joinB-229 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
INNER JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-230 {
SELECT a, b, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-231 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
INNER JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - - 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-232 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL LEFT JOIN t2
NATURAL FULL JOIN t3
NATURAL INNER JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-233 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-234 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 37 - 37 - 37
18 - - 38 - 38
19 - - 39 39 39
}
do_execsql_test joinB-235 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 11 - 11 11 -
12 12 12 12 - -
13 - - 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-236 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
12 32 32 32 - -
15 35 35 35 35 35
17 37 - 37 - -
}
do_execsql_test joinB-237 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-238 {
SELECT a, b, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 37 - 37 - 37
18 28 - - 38 - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-239 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 11 - 11 11 -
12 12 12 12 - -
13 - - 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-240 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL LEFT JOIN t2
NATURAL FULL JOIN t3
NATURAL LEFT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-241 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-242 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - 39 39 39
}
do_execsql_test joinB-243 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - - 13 13 -
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-244 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
13 - - - 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-245 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-246 {
SELECT a, b, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-247 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - - 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-248 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL LEFT JOIN t2
NATURAL FULL JOIN t3
NATURAL RIGHT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-249 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
FULL JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-250 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 37 - 37 - 37
18 - - 38 - 38
19 - - 39 39 39
}
do_execsql_test joinB-251 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
FULL JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 11 - 11 11 -
12 12 12 12 - -
13 - - 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-252 {
SELECT a, c, d, e, f, g
FROM t1
LEFT JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
12 32 32 32 - -
13 - - - 33 -
15 35 35 35 35 35
17 37 - 37 - -
}
do_execsql_test joinB-253 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
FULL JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-254 {
SELECT a, b, c, d, e, f, g
FROM t1
LEFT JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 37 - 37 - 37
18 28 - - 38 - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-255 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
LEFT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
FULL JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 11 - 11 11 -
12 12 12 12 - -
13 - - 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - - 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-256 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL LEFT JOIN t2
NATURAL FULL JOIN t3
NATURAL FULL JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-257 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
INNER JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
}
do_execsql_test joinB-258 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
}
do_execsql_test joinB-259 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
INNER JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
13 - 13 13 13 -
15 15 15 15 15 15
}
do_execsql_test joinB-260 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
13 - 33 33 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-261 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
INNER JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-262 {
SELECT a, b, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - - - 39
}
do_execsql_test joinB-263 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
INNER JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
13 - 13 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-264 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL RIGHT JOIN t2
NATURAL INNER JOIN t3
NATURAL INNER JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-265 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
18 - 18 18 - 18
}
do_execsql_test joinB-266 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
18 - 38 38 - 38
}
do_execsql_test joinB-267 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
18 - 18 18 - 18
}
do_execsql_test joinB-268 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
12 32 32 32 - -
13 - 33 33 33 -
15 35 35 35 35 35
18 - 38 38 - -
}
do_execsql_test joinB-269 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - 18 18 - 18
19 - - - - 19
}
do_execsql_test joinB-270 {
SELECT a, b, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - 38 38 - 38
19 29 - - - - 39
}
do_execsql_test joinB-271 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - 18 18 - 18
19 - - - - 19
}
do_execsql_test joinB-272 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL RIGHT JOIN t2
NATURAL INNER JOIN t3
NATURAL LEFT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-273 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - - 19 19
}
do_execsql_test joinB-274 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - - 39 39
}
do_execsql_test joinB-275 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - - 11 -
13 - 13 13 13 -
15 15 15 15 15 15
19 - - - 19 19
}
do_execsql_test joinB-276 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 - - - 31 -
13 - 33 33 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-277 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-278 {
SELECT a, b, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - - 39 39
}
do_execsql_test joinB-279 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - - 11 -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-280 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL RIGHT JOIN t2
NATURAL INNER JOIN t3
NATURAL RIGHT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-281 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
FULL JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
18 - 18 18 - 18
19 - - - 19 19
}
do_execsql_test joinB-282 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
18 - 38 38 - 38
19 - - - 39 39
}
do_execsql_test joinB-283 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
FULL JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - - 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
18 - 18 18 - 18
19 - - - 19 19
}
do_execsql_test joinB-284 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 - - - 31 -
12 32 32 32 - -
13 - 33 33 33 -
15 35 35 35 35 35
18 - 38 38 - -
}
do_execsql_test joinB-285 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
FULL JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - 18 18 - 18
19 - - - 19 19
}
do_execsql_test joinB-286 {
SELECT a, b, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - 38 38 - 38
19 29 - - - 39 39
}
do_execsql_test joinB-287 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
INNER JOIN t3 USING(a)
FULL JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - - 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - 18 18 - 18
19 - - - 19 19
}
do_execsql_test joinB-288 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL RIGHT JOIN t2
NATURAL INNER JOIN t3
NATURAL FULL JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-289 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
}
do_execsql_test joinB-290 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
}
do_execsql_test joinB-291 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
13 - 13 13 13 -
15 15 15 15 15 15
}
do_execsql_test joinB-292 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
13 - 33 33 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-293 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-294 {
SELECT a, b, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - - - 39
}
do_execsql_test joinB-295 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
13 - 13 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-296 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL RIGHT JOIN t2
NATURAL LEFT JOIN t3
NATURAL INNER JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-297 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
18 - 18 18 - 18
}
do_execsql_test joinB-298 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
18 - 38 38 - 38
}
do_execsql_test joinB-299 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
18 - 18 18 - 18
}
do_execsql_test joinB-300 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
12 32 32 32 - -
13 - 33 33 33 -
15 35 35 35 35 35
18 - 38 38 - -
}
do_execsql_test joinB-301 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - 18 18 - 18
19 - - - - 19
}
do_execsql_test joinB-302 {
SELECT a, b, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - 38 38 - 38
19 29 - - - - 39
}
do_execsql_test joinB-303 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - 18 18 - 18
19 - - - - 19
}
do_execsql_test joinB-304 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL RIGHT JOIN t2
NATURAL LEFT JOIN t3
NATURAL LEFT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-305 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - - 19 19
}
do_execsql_test joinB-306 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - - 39 39
}
do_execsql_test joinB-307 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - - 11 -
13 - 13 13 13 -
15 15 15 15 15 15
19 - - - 19 19
}
do_execsql_test joinB-308 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 - - - 31 -
13 - 33 33 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-309 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-310 {
SELECT a, b, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - - 39 39
}
do_execsql_test joinB-311 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - - 11 -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-312 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL RIGHT JOIN t2
NATURAL LEFT JOIN t3
NATURAL RIGHT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-313 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
18 - 18 18 - 18
19 - - - 19 19
}
do_execsql_test joinB-314 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
18 - 38 38 - 38
19 - - - 39 39
}
do_execsql_test joinB-315 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 - - - 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
18 - 18 18 - 18
19 - - - 19 19
}
do_execsql_test joinB-316 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 - - - 31 -
12 32 32 32 - -
13 - 33 33 33 -
15 35 35 35 35 35
18 - 38 38 - -
}
do_execsql_test joinB-317 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - 18 18 - 18
19 - - - 19 19
}
do_execsql_test joinB-318 {
SELECT a, b, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - 38 38 - 38
19 29 - - - 39 39
}
do_execsql_test joinB-319 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 - - - 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - 18 18 - 18
19 - - - 19 19
}
do_execsql_test joinB-320 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL RIGHT JOIN t2
NATURAL LEFT JOIN t3
NATURAL FULL JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-321 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-322 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - 39 39 39
}
do_execsql_test joinB-323 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-324 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
13 - 33 33 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-325 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-326 {
SELECT a, b, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-327 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-328 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL RIGHT JOIN t2
NATURAL RIGHT JOIN t3
NATURAL INNER JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-329 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-330 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 - - 37 - 37
18 - 38 38 - 38
19 - - 39 39 39
}
do_execsql_test joinB-331 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 - - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-332 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
12 32 32 32 - -
13 - 33 33 33 -
15 35 35 35 35 35
17 37 - 37 - -
18 - 38 38 - -
}
do_execsql_test joinB-333 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-334 {
SELECT a, b, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - 37 - 37
18 28 - 38 38 - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-335 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 - - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-336 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL RIGHT JOIN t2
NATURAL RIGHT JOIN t3
NATURAL LEFT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-337 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-338 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - 39 39 39
}
do_execsql_test joinB-339 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-340 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
13 - 33 33 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-341 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-342 {
SELECT a, b, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-343 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-344 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL RIGHT JOIN t2
NATURAL RIGHT JOIN t3
NATURAL RIGHT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-345 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-346 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 - - 37 - 37
18 - 38 38 - 38
19 - - 39 39 39
}
do_execsql_test joinB-347 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 - - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-348 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
12 32 32 32 - -
13 - 33 33 33 -
15 35 35 35 35 35
17 37 - 37 - -
18 - 38 38 - -
}
do_execsql_test joinB-349 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-350 {
SELECT a, b, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - 37 - 37
18 28 - 38 38 - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-351 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 - - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-352 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL RIGHT JOIN t2
NATURAL RIGHT JOIN t3
NATURAL FULL JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-353 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
INNER JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-354 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - 39 39 39
}
do_execsql_test joinB-355 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
INNER JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-356 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
13 - 33 33 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-357 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
INNER JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-358 {
SELECT a, b, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-359 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
INNER JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-360 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL RIGHT JOIN t2
NATURAL FULL JOIN t3
NATURAL INNER JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-361 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-362 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 - - 37 - 37
18 - 38 38 - 38
19 - - 39 39 39
}
do_execsql_test joinB-363 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
- - - - - -
11 - - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-364 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
12 32 32 32 - -
13 - 33 33 33 -
15 35 35 35 35 35
17 37 - 37 - -
18 - 38 38 - -
}
do_execsql_test joinB-365 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-366 {
SELECT a, b, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - 37 - 37
18 28 - 38 38 - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-367 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
- - - - - -
11 - - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-368 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL RIGHT JOIN t2
NATURAL FULL JOIN t3
NATURAL LEFT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-369 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-370 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - 39 39 39
}
do_execsql_test joinB-371 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-372 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
13 - 33 33 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-373 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-374 {
SELECT a, b, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-375 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 - - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-376 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL RIGHT JOIN t2
NATURAL FULL JOIN t3
NATURAL RIGHT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-377 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
FULL JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-378 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 - - 37 - 37
18 - 38 38 - 38
19 - - 39 39 39
}
do_execsql_test joinB-379 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
FULL JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
- - - - - -
11 - - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-380 {
SELECT a, c, d, e, f, g
FROM t1
RIGHT JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
12 32 32 32 - -
13 - 33 33 33 -
15 35 35 35 35 35
17 37 - 37 - -
18 - 38 38 - -
}
do_execsql_test joinB-381 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
FULL JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-382 {
SELECT a, b, c, d, e, f, g
FROM t1
RIGHT JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - 37 - 37
18 28 - 38 38 - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-383 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
RIGHT JOIN t2 USING(a)
FULL JOIN t3 USING(a)
FULL JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
- - - - - -
11 - - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-384 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL RIGHT JOIN t2
NATURAL FULL JOIN t3
NATURAL FULL JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-385 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
INNER JOIN t3 USING(a)
INNER JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
}
do_execsql_test joinB-386 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
}
do_execsql_test joinB-387 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
INNER JOIN t3 USING(a)
INNER JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
}
do_execsql_test joinB-388 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - - 31 -
13 - 33 33 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-389 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
INNER JOIN t3 USING(a)
INNER JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-390 {
SELECT a, b, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - - - 39
}
do_execsql_test joinB-391 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
INNER JOIN t3 USING(a)
INNER JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-392 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL FULL JOIN t2
NATURAL INNER JOIN t3
NATURAL INNER JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-393 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
INNER JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
}
do_execsql_test joinB-394 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 37 - 37 - 37
18 - 38 38 - 38
}
do_execsql_test joinB-395 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
INNER JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
}
do_execsql_test joinB-396 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - - 31 -
12 32 32 32 - -
13 - 33 33 33 -
15 35 35 35 35 35
17 37 - - - -
18 - 38 38 - -
}
do_execsql_test joinB-397 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
INNER JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - - - 19
}
do_execsql_test joinB-398 {
SELECT a, b, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 37 - 37 - 37
18 28 - 38 38 - 38
19 29 - - - - 39
}
do_execsql_test joinB-399 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
INNER JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - - - 19
}
do_execsql_test joinB-400 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL FULL JOIN t2
NATURAL INNER JOIN t3
NATURAL LEFT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-401 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
INNER JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - - 19 19
}
do_execsql_test joinB-402 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - - 39 39
}
do_execsql_test joinB-403 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
INNER JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
19 - - - 19 19
}
do_execsql_test joinB-404 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - - 31 -
13 - 33 33 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-405 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
INNER JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-406 {
SELECT a, b, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - - 39 39
}
do_execsql_test joinB-407 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
INNER JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-408 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL FULL JOIN t2
NATURAL INNER JOIN t3
NATURAL RIGHT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-409 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
INNER JOIN t3 USING(a)
FULL JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - - 19 19
}
do_execsql_test joinB-410 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 37 - 37 - 37
18 - 38 38 - 38
19 - - - 39 39
}
do_execsql_test joinB-411 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
INNER JOIN t3 USING(a)
FULL JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - - 19 19
}
do_execsql_test joinB-412 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN (t2 INNER JOIN t3 USING(a)) USING(a)
FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - - 31 -
12 32 32 32 - -
13 - 33 33 33 -
15 35 35 35 35 35
17 37 - - - -
18 - 38 38 - -
}
do_execsql_test joinB-413 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
INNER JOIN t3 USING(a)
FULL JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - - 19 19
}
do_execsql_test joinB-414 {
SELECT a, b, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
INNER JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 37 - 37 - 37
18 28 - 38 38 - 38
19 29 - - - 39 39
}
do_execsql_test joinB-415 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
INNER JOIN t3 USING(a)
FULL JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - - 19 19
}
do_execsql_test joinB-416 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL FULL JOIN t2
NATURAL INNER JOIN t3
NATURAL FULL JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-417 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
}
do_execsql_test joinB-418 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
}
do_execsql_test joinB-419 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
}
do_execsql_test joinB-420 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - - 31 -
13 - 33 33 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-421 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-422 {
SELECT a, b, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - - - 39
}
do_execsql_test joinB-423 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - - 19
}
do_execsql_test joinB-424 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL FULL JOIN t2
NATURAL LEFT JOIN t3
NATURAL INNER JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-425 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
}
do_execsql_test joinB-426 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 37 - 37 - 37
18 - 38 38 - 38
}
do_execsql_test joinB-427 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 11 - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
}
do_execsql_test joinB-428 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - - 31 -
12 32 32 32 - -
13 - 33 33 33 -
15 35 35 35 35 35
17 37 - - - -
18 - 38 38 - -
}
do_execsql_test joinB-429 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - - - 19
}
do_execsql_test joinB-430 {
SELECT a, b, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 37 - 37 - 37
18 28 - 38 38 - 38
19 29 - - - - 39
}
do_execsql_test joinB-431 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 11 - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - - - 19
}
do_execsql_test joinB-432 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL FULL JOIN t2
NATURAL LEFT JOIN t3
NATURAL LEFT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-433 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - - 19 19
}
do_execsql_test joinB-434 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - - 39 39
}
do_execsql_test joinB-435 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
19 - - - 19 19
}
do_execsql_test joinB-436 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - - 31 -
13 - 33 33 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-437 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-438 {
SELECT a, b, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - - 39 39
}
do_execsql_test joinB-439 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - - 19 19
}
do_execsql_test joinB-440 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL FULL JOIN t2
NATURAL LEFT JOIN t3
NATURAL RIGHT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-441 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - - 19 19
}
do_execsql_test joinB-442 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 37 - 37 - 37
18 - 38 38 - 38
19 - - - 39 39
}
do_execsql_test joinB-443 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 11 - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - - 19 19
}
do_execsql_test joinB-444 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN (t2 LEFT JOIN t3 USING(a)) USING(a)
FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - - 31 -
12 32 32 32 - -
13 - 33 33 33 -
15 35 35 35 35 35
17 37 - - - -
18 - 38 38 - -
}
do_execsql_test joinB-445 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - - 19 19
}
do_execsql_test joinB-446 {
SELECT a, b, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
LEFT JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 37 - 37 - 37
18 28 - 38 38 - 38
19 29 - - - 39 39
}
do_execsql_test joinB-447 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
LEFT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 11 - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - - 19 19
}
do_execsql_test joinB-448 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL FULL JOIN t2
NATURAL LEFT JOIN t3
NATURAL FULL JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-449 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-450 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - 39 39 39
}
do_execsql_test joinB-451 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-452 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
13 - 33 33 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-453 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-454 {
SELECT a, b, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-455 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
INNER JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-456 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL FULL JOIN t2
NATURAL RIGHT JOIN t3
NATURAL INNER JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-457 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-458 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 37 - 37 - 37
18 - 38 38 - 38
19 - - 39 39 39
}
do_execsql_test joinB-459 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 11 - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-460 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
12 32 32 32 - -
13 - 33 33 33 -
15 35 35 35 35 35
17 37 - 37 - -
18 - 38 38 - -
}
do_execsql_test joinB-461 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-462 {
SELECT a, b, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 37 - 37 - 37
18 28 - 38 38 - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-463 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 11 - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-464 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL FULL JOIN t2
NATURAL RIGHT JOIN t3
NATURAL LEFT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-465 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-466 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - 39 39 39
}
do_execsql_test joinB-467 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-468 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
13 - 33 33 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-469 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-470 {
SELECT a, b, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-471 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-472 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL FULL JOIN t2
NATURAL RIGHT JOIN t3
NATURAL RIGHT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-473 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-474 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 37 - 37 - 37
18 - 38 38 - 38
19 - - 39 39 39
}
do_execsql_test joinB-475 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 11 - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-476 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN (t2 RIGHT JOIN t3 USING(a)) USING(a)
FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
12 32 32 32 - -
13 - 33 33 33 -
15 35 35 35 35 35
17 37 - 37 - -
18 - 38 38 - -
}
do_execsql_test joinB-477 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-478 {
SELECT a, b, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
RIGHT JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 37 - 37 - 37
18 28 - 38 38 - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-479 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
RIGHT JOIN t3 USING(a)
FULL JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
11 11 - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-480 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL FULL JOIN t2
NATURAL RIGHT JOIN t3
NATURAL FULL JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-481 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
FULL JOIN t3 USING(a)
INNER JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-482 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - 39 39 39
}
do_execsql_test joinB-483 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
FULL JOIN t3 USING(a)
INNER JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-484 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
INNER JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
13 - 33 33 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-485 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
FULL JOIN t3 USING(a)
INNER JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-486 {
SELECT a, b, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
INNER JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-487 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
FULL JOIN t3 USING(a)
INNER JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-488 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL FULL JOIN t2
NATURAL FULL JOIN t3
NATURAL INNER JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-489 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
FULL JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-490 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 37 - 37 - 37
18 - 38 38 - 38
19 - - 39 39 39
}
do_execsql_test joinB-491 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
FULL JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
- - - - - -
11 11 - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-492 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
LEFT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
12 32 32 32 - -
13 - 33 33 33 -
15 35 35 35 35 35
17 37 - 37 - -
18 - 38 38 - -
}
do_execsql_test joinB-493 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
FULL JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-494 {
SELECT a, b, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
LEFT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 37 - 37 - 37
18 28 - 38 38 - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-495 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
FULL JOIN t3 USING(a)
LEFT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
- - - - - -
11 11 - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-496 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL FULL JOIN t2
NATURAL FULL JOIN t3
NATURAL LEFT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-497 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
FULL JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-498 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
19 - - 39 39 39
}
do_execsql_test joinB-499 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
FULL JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
19 - - 19 19 19
}
do_execsql_test joinB-500 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
RIGHT JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
13 - 33 33 33 -
15 35 35 35 35 35
}
do_execsql_test joinB-501 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
FULL JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-502 {
SELECT a, b, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
RIGHT JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 - - - - 37
18 28 - - - - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-503 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
FULL JOIN t3 USING(a)
RIGHT JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
11 11 - 11 11 -
13 - 13 13 13 -
15 15 15 15 15 15
17 - - - - 17
18 - - - - 18
19 - - 19 19 19
}
do_execsql_test joinB-504 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL FULL JOIN t2
NATURAL FULL JOIN t3
NATURAL RIGHT JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
do_execsql_test joinB-505 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
FULL JOIN t3 USING(a)
FULL JOIN t4 USING(a)
INNER JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-506 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
INNER JOIN t5 USING(a,b)
WHERE a<>13
ORDER BY 1 NULLS FIRST;
} {
15 35 35 35 35 35
17 37 - 37 - 37
18 - 38 38 - 38
19 - - 39 39 39
}
do_execsql_test joinB-507 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
FULL JOIN t3 USING(a)
FULL JOIN t4 USING(a)
LEFT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
- - - - - -
11 11 - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-508 {
SELECT a, c, d, e, f, g
FROM t1
FULL JOIN (t2 FULL JOIN t3 USING(a)) USING(a)
FULL JOIN (t4 LEFT JOIN t5 USING(a)) USING(a)
WHERE a<=18
ORDER BY 1 NULLS FIRST;
} {
11 31 - 31 31 -
12 32 32 32 - -
13 - 33 33 33 -
15 35 35 35 35 35
17 37 - 37 - -
18 - 38 38 - -
}
do_execsql_test joinB-509 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
FULL JOIN t3 USING(a)
FULL JOIN t4 USING(a)
RIGHT JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-510 {
SELECT a, b, c, d, e, f, g
FROM t1
FULL JOIN t2 USING(a,b)
FULL JOIN t3 USING(a,b)
FULL JOIN t4 USING(a,b)
RIGHT JOIN t5 USING(a,b)
WHERE d<>33 OR d IS NULL
ORDER BY 1 NULLS FIRST;
} {
15 25 35 35 35 35 35
17 27 37 - 37 - 37
18 28 - 38 38 - 38
19 29 - - 39 39 39
}
do_execsql_test joinB-511 {
SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a
FROM t1
FULL JOIN t2 USING(a)
FULL JOIN t3 USING(a)
FULL JOIN t4 USING(a)
FULL JOIN t5 USING(a)
ORDER BY 1 NULLS FIRST;
} {
- - - - - -
- - - - - -
11 11 - 11 11 -
12 12 12 12 - -
13 - 13 13 13 -
15 15 15 15 15 15
17 17 - 17 - 17
18 - 18 18 - 18
19 - - 19 19 19
}
do_execsql_test joinB-512 {
SELECT b, c, d, e, f, g
FROM t1
NATURAL FULL JOIN t2
NATURAL FULL JOIN t3
NATURAL FULL JOIN t4
NATURAL FULL JOIN t5
WHERE b BETWEEN 12 AND 17
ORDER BY 1 NULLS FIRST;
} {
}
finish_test
##############################################################################
# Here is the original TCL script that generated the psql input file:
#
#
# 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;
# DROP TABLE IF EXISTS t5;
# CREATE TABLE t1(a INT, b INT, c INT);
# CREATE TABLE t2(a INT, b INT, d INT);
# CREATE TABLE t3(a INT, b INT, e INT);
# CREATE TABLE t4(a INT, b INT, f INT);
# CREATE TABLE t5(a INT, b INT, g INT);
# INSERT INTO t1 VALUES(11,21,31),(12,22,32),(15,25,35),(17,27,37);
# INSERT INTO t2 VALUES(12,22,32),(13,23,33),(15,25,35),(18,28,38),(NULL,NULL,36);
# INSERT INTO t4 VALUES(11,21,31),(13,23,33),(15,25,35),(19,29,39);
# INSERT INTO t3 SELECT * FROM t1 UNION SELECT * FROM t2 UNION SELECT * FROM t4;
# INSERT INTO t5 SELECT * FROM t3 WHERE a>=15;
# "
#
# proc echo {prefix txt} {
# regsub -all {\n} $txt \n$prefix txt
# puts "$prefix$txt"
# }
#
# set n 0
# set k 0
# foreach j1 {INNER LEFT RIGHT FULL} {
# foreach j2 {INNER LEFT RIGHT FULL} {
# foreach j3 {INNER LEFT RIGHT FULL} {
# foreach j4 {INNER LEFT RIGHT FULL} {
#
# incr n
# incr k
# set q1 ""
# append q1 "SELECT a, t1.a, t2.a, t3.a, t4.a, t5.a\n"
# append q1 " FROM t1\n"
# append q1 " $j1 JOIN t2 USING(a)\n"
# append q1 " $j2 JOIN t3 USING(a)\n"
# append q1 " $j3 JOIN t4 USING(a)\n"
# append q1 " $j4 JOIN t5 USING(a)\n"
# append q1 " ORDER BY 1 NULLS FIRST;"
#
# echo "\\qecho " "do_execsql_test joinB-$n \{"
# echo "\\qecho X " $q1
# echo "\\qecho " "\} \{"
# puts $q1
# echo "\\qecho " "\}"
#
# switch [expr {$k%4}] {
# 0 {
# set q2 ""
# append q2 "SELECT b, c, d, e, f, g\n"
# append q2 " FROM t1\n"
# append q2 " NATURAL $j1 JOIN t2\n"
# append q2 " NATURAL $j2 JOIN t3\n"
# append q2 " NATURAL $j3 JOIN t4\n"
# append q2 " NATURAL $j4 JOIN t5\n"
# append q2 " WHERE b BETWEEN 12 AND 17\n"
# append q2 " ORDER BY 1 NULLS FIRST;"
# incr n
# echo "\\qecho " "do_execsql_test joinB-$n \{"
# echo "\\qecho X " $q2
# echo "\\qecho " "\} \{"
# puts $q2
# echo "\\qecho " "\}"
# }
# 1 {
# set q2 ""
# append q2 "SELECT a, c, d, e, f, g\n"
# append q2 " FROM t1\n"
# append q2 " $j1 JOIN t2 USING(a,b)\n"
# append q2 " $j2 JOIN t3 USING(a,b)\n"
# append q2 " $j3 JOIN t4 USING(a,b)\n"
# append q2 " $j4 JOIN t5 USING(a,b)\n"
# append q2 " WHERE a<>13\n"
# append q2 " ORDER BY 1 NULLS FIRST;"
# incr n
# echo "\\qecho " "do_execsql_test joinB-$n \{"
# echo "\\qecho X " $q2
# echo "\\qecho " "\} \{"
# puts $q2
# echo "\\qecho " "\}"
# }
# 2 {
# set q2 ""
# append q2 "SELECT a, c, d, e, f, g\n"
# append q2 " FROM t1\n"
# append q2 " $j1 JOIN (t2 $j2 JOIN t3 USING(a)) USING(a)\n"
# append q2 " $j3 JOIN (t4 $j4 JOIN t5 USING(a)) USING(a)\n"
# append q2 " WHERE a<=18\n"
# append q2 " ORDER BY 1 NULLS FIRST;"
# incr n
# echo "\\qecho " "do_execsql_test joinB-$n \{"
# echo "\\qecho X " $q2
# echo "\\qecho " "\} \{"
# puts $q2
# echo "\\qecho " "\}"
# }
# 3 {
# set q2 ""
# append q2 "SELECT a, b, c, d, e, f, g\n"
# append q2 " FROM t1\n"
# append q2 " $j1 JOIN t2 USING(a,b)\n"
# append q2 " $j2 JOIN t3 USING(a,b)\n"
# append q2 " $j3 JOIN t4 USING(a,b)\n"
# append q2 " $j4 JOIN t5 USING(a,b)\n"
# append q2 " WHERE d<>33 OR d IS NULL\n"
# append q2 " ORDER BY 1 NULLS FIRST;"
# incr n
# echo "\\qecho " "do_execsql_test joinB-$n \{"
# echo "\\qecho X " $q2
# echo "\\qecho " "\} \{"
# puts $q2
# echo "\\qecho " "\}"
# }
# }
#
# }
# }
# }
# }
##############################################################################