MySQL SlowQuery - ORDER BY
mixmastertobsi
- mysql
0 Rolf B
Hallo,
ich habe eine MySQL Abfrage, welche immer mehr als 2 Sekungen braucht und das Problem hier ist ORDER BY, weil die DB über 50.000 Einträge sortieren muss und nachher nur 100 davon ausgibt.
Explain sagt mir folgendes
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY ticket index PRIMARY 4 40840 Using temporary; Using filesort
Gibt es hier eine Lösung, um die Abfrage zu beschleunigen?
Hallo mixmastertobsi,
Ansonsten:
Es sieht so aus, als würde er ein solches Datenvolumen haben dass er mit einer temporären Datei und einem Filesort arbeiten muss; das ist der Worst Case überhaupt. Er sagt zwar, dass er "PRIMARY" als möglichen Key vorfindet, aber daneben steht nichts mehr und das heißt, dass er den Index nicht verwendet.
Schwierig, mit diesen Infos mehr zu sagen - was ist das für eine Query, wie sehen die Tables aus, welche Indexe hast Du, welche DB-Engine ist das, hast Du schonmal ANALYZE TABLE gemacht (hilft dem Server beim Aussuchen von Indizes)?
Rolf