Sven: JOIN-Query sehr langsam

Beitrag lesen

Vermutlich wird das Left Join im Zusammenhang mit dem größer/kleiner einen Full-Table-Scan machen.

Mit der SQL-Anweisung BETWEEN geht es gleich lang:

SELECT *, berater.id as id, staedte.id as stadt_id FROM berater LEFT JOIN staedte ON berater.plz between plz_von and plz_bis GROUP BY berater.ort ORDER BY berater.id DESC

Habe deinen Code ausgeführt, in Tabelle "berater" steht als Extra "Using temporary; Using filesort". Vielleicht nützt dir die Info was?

In "possible_keys", "key", "key_len" und "ref" steht nichts. Bedeutet das nun, dass keine Indizierung verwendet wird?

Dann steht noch Anzahl Abfragen = 4906940 da.
Wieso macht der LEFT JOIN 5 Mio Abfragen?