Gleichheitssuche mit like

Teesäufer

Neuer Benutzer
Beiträge
1
Hallo zusammen,

der like-Operator ist ja grundsätzlich für die Ähnlichkeitssuche. Lässt man aber den * weg (bzw. bei Mysql den %), sucht man damit auf Gleichheit. Ergibt sich eigentlich ein Nachteil, wenn man like statt = verwendet? Ich fand dazu bisher noch keine Antwort, kann mir nur vorstellen, dass es bei großen Anfragen länger dauert. Weiß jemand etwas darüber?

Beispiel:

select *
from Kunden
where Nachname like "Müller"
 
Werbung:
Wahrscheinlich hat das unter Access keine Auswirkung.

Du kannst es einfach ausprobieren und in einer sehr großen Tabelle eine Vergleichsabfrage laufen lassen.
 
Ich war mir nicht sicher was einen Index angeht aber LIKE ohne Wildcard am Anfang kann einen Index nutzen. Ansonsten gibt es Unterschiede über das offensichtliche hinaus (wie z.B. das LIKE keine Zahlen kann, etc.):

Was Access angeht, spielt das vermutlich keine wirkliche Rolle. Ich glaube nicht das du in Access in eine Situation kommst, in der die Performance ein Problem wird. Wenn deine Tabelle so groß wäre, das es einen signifikanten Unterschied macht, dann ist Access eh nicht das richtige Werkzeug für deine Daten.
 
Werbung:
Naja, der TE hat (unter anderem) danach gefragt, wie like ohne Wildcards funktioniert. Zudem darf man vielleicht davon ausgehen, dass es wie in seinem Beispiel tatsächlich nur um Strings geht, insbesondere unter Performanceaspekten.

like kann keine Zahlen
ist sicher ein richtiger Hinweis, aber auch nur die halbe Miete, weil die Engine idR eine implizite Typkonvertierung macht.
Like muss also gar keine Zahlen können.

Viel spannender finde ich die Frage, was der TE mit der Frage bezweckt.
Ein bischen Programmierarbeit sparen? In einem Suchformular? Ein Feld / ein SQL Statement für Gleichheit und Like? ...
Das könnte spannend werden.
Oder: Wer oder was hindert den TE, es auszuprobieren?
 
Zurück
Oben