Einzelnen Beitrag anzeigen
Alt 16.10.2013, 11:51   #4
pc.net
Aussteiger
 
Benutzerbild von pc.net
 
Registriert seit: 07.10.2001
Ort: Nettistan
Beiträge: 12.997

Mein Computer

Standard

ich beziehe mich auf diesen punkt der doku:

Zitat:
Der Join-Optimierer berechnet die Reihenfolge, in der die Tabellen verknüpft werden sollten. Die durch LEFT JOIN oder STRAIGHT_JOIN erzwungene Lesereihenfolge für die Tabellen unterstützt den Join-Optimierer bei seiner Arbeit wesentlich effizienter, weil erheblich weniger Tabellenumstellungen zu überprüfen sind.
der mysql-optimierer kommt hier wohl durcheinander ...



was mir noch einfallen würde:
probier als erste die verbindungs-bedingung zw. den beiden tabellen ... dadurch sollte der optimizer beim parsen des statements jedenfalls zuerst erkennen, dass er beide tabellen für ein korrektes ergebnis verbinden sollte ... dann sollte die reihenfolge der tabellen auch unerheblich sein ...
nebenbei macht das so ein statement auch leichter lesbar - vor allem bei umfangreichen abfragen mit vielen tabellen hilft das sehr ...
____________________________________
Praktizierender Eristiker

No hace falta ser un genio para saber quién dijo eso.
Der wirklich faule Mensch ist oft extrem fleißig, denn er will möglichst schnell wieder faul sein.
pc.net ist offline   Mit Zitat antworten