An experimantal query, involving OUTER JOIN with BETWEEN and JOIN with a combined OR and AND expression, does not return all expected rows. I tried this just after SQLite 3.8.0. was released and found that the issue is particular to this version. At least it is alright in version 3.7.17. Below is a simplified case. This is still complex but if you leave out anything further, the problem no longer occurs. Hope it is useful to report this.

.echo on
.version
SQLite 3.8.0 2013-08-26 04:50:08 f64cd21e2e23ed7cff48f7dafa5e76adde9321c2
CREATE TABLE t (id INTEGER PRIMARY KEY NOT NULL)
;
INSERT INTO t VALUES (1)
;
SELECT  *
FROM    t t1
LEFT OUTER JOIN t t2 ON t2.id BETWEEN 10 AND 20
JOIN    t t3 ON
            (
                t3.id = t1.id
            OR  t2.id IS NOT NULL AND t3.id = t2.id
            )
;

-- E Pasma
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to