Ensure that the query flattener does not change an ON clause term to a WHERE clause term.
FossilOrigin-Name: e487d3b3c03ebcf06f8071f5c6a04faae15605200361e831df7bb2361e33efc3
This commit is contained in:
@@ -325,4 +325,35 @@ do_eqp_test 6.3 {
|
||||
`--REUSE LIST SUBQUERY xxxxxx
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
reset_db
|
||||
do_execsql_test 7.0 {
|
||||
CREATE TABLE t0_1(a INT , b INT, c INT);
|
||||
CREATE TABLE t0_2(a INT , b INT, c INT);
|
||||
|
||||
INSERT INTO t0_1 (a, b, c) VALUES (1, 0, 1);
|
||||
INSERT INTO t0_2 (a, b, c) VALUES (1, 0, 1);
|
||||
|
||||
CREATE TABLE empty1(x);
|
||||
CREATE TABLE empty2(y);
|
||||
}
|
||||
|
||||
do_execsql_test 7.1 {
|
||||
SELECT t0_2.c
|
||||
FROM (SELECT '0000' AS c0 FROM empty2 RIGHT JOIN t0_1 ON 1) AS v0
|
||||
LEFT JOIN empty1 ON v0.c0, t0_2
|
||||
RIGHT JOIN (
|
||||
SELECT 5678 AS col0 FROM (SELECT 0)
|
||||
) AS sub1 ON 1;
|
||||
} {1}
|
||||
|
||||
do_execsql_test 7.2 {
|
||||
SELECT t0_2.c
|
||||
FROM (SELECT '0000' AS c0 FROM empty2 RIGHT JOIN t0_1 ON 1) AS v0
|
||||
LEFT JOIN empty1 ON v0.c0, t0_2
|
||||
RIGHT JOIN (
|
||||
SELECT 5678 AS col0 FROM (SELECT 0)
|
||||
) AS sub1 ON 1 WHERE +t0_2.c;
|
||||
} {1}
|
||||
|
||||
finish_test
|
||||
|
||||
Reference in New Issue
Block a user