Replace LEFT with CROSS in all cases that you used LEFT as a hint. Not at all 
complex, apart from you having to discern between "hint" and "necessities".

-----Ursprüngliche Nachricht-----
Von: sqlite-users [mailto:sqlite-users-boun...@mailinglists.sqlite.org] Im 
Auftrag von Eric Grange
Gesendet: Freitag, 23. März 2018 09:07
An: SQLite mailing list <sqlite-users@mailinglists.sqlite.org>
Betreff: [EXTERNAL] Re: [sqlite] The upcoming 3.23.0 release

> Add the LEFT JOIN strength reduction optimization that converts a LEFT
JOIN into an ordinary JOIN

A question on this one: I have been using LEFT JOIN for many years (and not 
juste in SQLIte) in cases where a JOIN could have been used as a way to "hint" 
query optimizers which tables to scan first, typically in cases where the WHERE 
is too complex or misleading for the optimizer (ie.
whenever index statistics paint a wrong picture, for whatever specific reasons).
I can see that change "breaking" optimized queries back to their original 
performance.

Is there a planned "QUERY PLAN" or lightweight hinting is in the works?
The current suggestions in the doc are to use cross joins or stat3/stat4 
tables, but both are quite more complex to maintain, while just introducing a 
"LEFT" before a "JOIN" in a particular query used to be enough :)

On Fri, Mar 23, 2018 at 1:06 AM, Olivier Mascia <o...@integral.be> wrote:



___________________________________________
 Gunter Hick | Software Engineer | Scientific Games International GmbH | 
Klitschgasse 2-4, A-1130 Vienna | FN 157284 a, HG Wien, DVR: 0430013 | (O) +43 
1 80100 - 0

May be privileged. May be confidential. Please delete if not the addressee.
_______________________________________________
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to