Frage zur Performance eines Querys

timestamp

Mitglied Käsekuchen
Hi

ich hoffe dass ich überhaupt die Performance meine. Es handelt sich um einen Query folgender Art:
SQL:
SELECT * FROM users WHERE username = 'hans' OR email = 'beispiel@host.de' LIMIT 0,1

Wird, durch das LIMIT 0,1 die Datenbankabfrage nach dem ersten Treffer abgebrochen oder läuft die trotzdem bis zum Ende weiter. Wenn die weiterläuft, gibt es eine Möglichkeit das zu verhindern? Ich möchte nämlich nur prüfen ob ein Username oder eine Emailadresse schon vorhanden ist. Es handelt sich hierbei um eine MySQL Datenbank.
 
Wird, durch das LIMIT 0,1 die Datenbankabfrage nach dem ersten Treffer abgebrochen oder läuft die trotzdem bis zum Ende weiter.

Ja, die Abfrage wird abgebrochen. Anders würde es aussehen, wenn du ein ORDER BY hättest. Eine Quelle für die Aussage habe ich aber keine parat.

Übrigens, wenn du nur überprüfen willst, ob ein solcher Datensatz existiert, brauchst du kein SELECT *. Da werden unnötige Daten übertragen. Mach SELECT 1 oder SELECT NULL o.ä. und überprüfe, ob ein Datensatz zurück kommt, oder nicht.
 
Zurück