1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-07-30 19:03:16 +03:00

Ensure affinity is not discarded from a view column if the view appears on the rhs of a LEFT JOIN. Fix for [45f4bf4e].

FossilOrigin-Name: ac31edd3eeafcef46164a4506bbc32c711bb7cd78378aeaa4c9bb12524ac5ea1
This commit is contained in:
dan
2020-04-25 15:01:53 +00:00
parent ab2172e69f
commit 07f9e8f4f3
5 changed files with 45 additions and 13 deletions

View File

@ -293,5 +293,36 @@ do_execsql_test 8.1 {
WHERE (t1.c0 BETWEEN 0 AND 0) > ('' AND t0.c0);
}
#-------------------------------------------------------------------------
# Ticket [45f4bf4eb].
#
reset_db
do_execsql_test 9.0 {
CREATE TABLE t0(c0 INT);
CREATE VIEW v0(c0) AS SELECT CAST(t0.c0 AS INTEGER) FROM t0;
INSERT INTO t0(c0) VALUES (0);
}
do_execsql_test 9.1 {
SELECT typeof(c0), c0 FROM v0 WHERE c0>='0'
} {integer 0}
do_execsql_test 9.2 {
SELECT * FROM t0, v0 WHERE v0.c0 >= '0';
} {0 0}
do_execsql_test 9.3 {
SELECT * FROM t0 LEFT JOIN v0 WHERE v0.c0 >= '0';
} {0 0}
do_execsql_test 9.4 {
SELECT * FROM t0 LEFT JOIN v0 ON v0.c0 >= '0';
} {0 0}
do_execsql_test 9.5 {
SELECT * FROM t0 LEFT JOIN v0 ON v0.c0 >= '0' WHERE TRUE
UNION SELECT 0,0 WHERE 0;
} {0 0}
finish_test