Hi. Ich habe eine Datenbank, die ca. 300.000 ROWS hat. Um in einem Script die Suche zu opimieren, habe ich zuvor im phpmyadmin folgendes getestet:
Die Abfragezeit von z.B "SELECT * from db WHERE Nachname='Meier' LIMIT 1" hängt von der Position (increment id) in der Tabelle ab. Ist der Nachname 'Meier' unter den ersten 30 Rows, dann dauert die Abfrage weit unter einer Sekunde. Befindet sich jedoch Nachname 'Meier' in ID 299.888, dann dauert die Abfrage gute 2-3 Sekunden.
Meine Frage: Ich kann in einigen Scripten einschätzen, wo sich das Ergebnis ca. befindet. Daher: Kann ich eine Abfrage so gestalten, sodass mysql umgekehrt sucht? Sprich in dem oben genannten Fall von 300.000 abwärts sucht?
Die Abfragezeit von z.B "SELECT * from db WHERE Nachname='Meier' LIMIT 1" hängt von der Position (increment id) in der Tabelle ab. Ist der Nachname 'Meier' unter den ersten 30 Rows, dann dauert die Abfrage weit unter einer Sekunde. Befindet sich jedoch Nachname 'Meier' in ID 299.888, dann dauert die Abfrage gute 2-3 Sekunden.
Meine Frage: Ich kann in einigen Scripten einschätzen, wo sich das Ergebnis ca. befindet. Daher: Kann ich eine Abfrage so gestalten, sodass mysql umgekehrt sucht? Sprich in dem oben genannten Fall von 300.000 abwärts sucht?
Kommentar