Hej hej,
ich habe ein Problem, welches sich mit Joins befasst. Der Query klappt hervorragend, jedoch habe ich ein Indexproblem und ich finde es einfach nicht. Ohne eine Where klausel, klappt der Join und mySQL nutzt die vorhandenen Indizies.
Die Felder in der Where Klausel sind wie folgt definiert:
Ort varchar(127); Forsale int(11); LAND char(3);
Ich habe mittlerweile alle varianten durchprobiert, auf den Feldern Indizies zu erstellen. Doch leider nutzt er diese nicht.
Die Abfragedauer beläuft sich zwar "nur" auf 0.0021 sec, aber die DB macht einen Select-Full-Join. Das ist zwar in der Entwicklungsphase mit nur 660 Datensätzen nicht wild, aber nachher im Echtbetrieb und mit 30.000 oder 50.000 Datensätzen nicht mehr witzig.
Ich würde mich freuen, wenn jemand dazu eine Idee hat.
Viele Grüße aus Göteborg
Tobias
[edit: Quellcode entfernt. Sorry, wollte niemandem auf den Schlipps treten]
ich habe ein Problem, welches sich mit Joins befasst. Der Query klappt hervorragend, jedoch habe ich ein Indexproblem und ich finde es einfach nicht. Ohne eine Where klausel, klappt der Join und mySQL nutzt die vorhandenen Indizies.
Die Felder in der Where Klausel sind wie folgt definiert:
Ort varchar(127); Forsale int(11); LAND char(3);
Ich habe mittlerweile alle varianten durchprobiert, auf den Feldern Indizies zu erstellen. Doch leider nutzt er diese nicht.
Die Abfragedauer beläuft sich zwar "nur" auf 0.0021 sec, aber die DB macht einen Select-Full-Join. Das ist zwar in der Entwicklungsphase mit nur 660 Datensätzen nicht wild, aber nachher im Echtbetrieb und mit 30.000 oder 50.000 Datensätzen nicht mehr witzig.
Ich würde mich freuen, wenn jemand dazu eine Idee hat.
Viele Grüße aus Göteborg
Tobias
[edit: Quellcode entfernt. Sorry, wollte niemandem auf den Schlipps treten]
Kommentar