Der SQL-LIKE-Operator – für effizientes Suchen mit SQL
Der SQL LIKE
-Operator zählt zu den wichtigsten SQL-Werkzeugen, um Datensätze effizient nach bestimmten Mustern zu durchsuchen. Möglich macht das die Verwendung von Platzhaltern und Mustern, mit denen Sie die zu untersuchenden Datensätze deutlich reduzieren. Auf diese Weise vereinfachen und beschleunigen Sie Ihre SQL-Abfragen.
Was ist der SQL LIKE
-Operator?
Der SQL LIKE
-Operator funktioniert wie ein Spürhund für Datenanalysen. Je nach Bedarf durchsuchen Sie Datensätze und Zeichenketten nach exakten Übereinstimmungen oder nutzen Platzhalter und Muster. SQL-Platzhalter werden in diesem Zusammenhang auch SQL-Wildcards genannt, die nur in Verbindung mit dem LIKE
-Operator zum Einsatz kommen. Sie sorgen dafür, dass Sie Daten effizient und flexibel filtern und Ihre SQL-Performance deutlich optimieren. Der LIKE
-Operator kommt häufig in Verbindung mit der WHERE
-Klausel sowie den SQL-Befehlen SQL DELETE, SQL SELECT oder SQL UPDATE zum Einsatz.
Sollten Sie sich mit SQL bisher noch nicht intensiv beschäftigt haben, werfen Sie einfach einen Blick in unsere SQL-Einführung mit Beispielen.
So sieht die Syntax des LIKE
-Operators aus
Die grundlegende LIKE
-Syntax sieht wie folgt aus:
SELECT spalteA, spalteB, …
FROM tabelleA
WHERE spalteA LIKE 'Suchmuster oder Platzhalter'
sqlDiese Parameter kommen zum Einsatz:
-
SELECT
: Legt Spalten fest, aus denen Sie Daten abrufen. Mit einem Asterisk*
können Sie auch gesamte Datensätze heranziehen. -
FROM
: Gibt Tabellen an, die für die Suche in Frage kommen. -
WHERE
: Definiert konkrete Spalten für die Abfrage. -
LIKE
: Legt Suchmuster fest. Sie können konkrete Zeichenketten für exakte Übereinstimmungen nutzen oder SQL-Wildcards verwenden.
Diese SQL-Wildcards bieten sich für SQL LIKE
an
SQL-Wildcards sollten bei der Suche mit SQL nur mit dem LIKE-Operator zum Einsatz kommen, um nach ähnlichen, übereinstimmenden Ergebnissen zu suchen. Die wichtigsten Wildcards umfassen:
-
Prozentzeichen
%
: Das%
ersetzt ein oder mehrere Zeichen im Suchmuster. Mit%Suchmuster%
filtern Sie den Datensatz nach dem definierten Muster zwischen den Prozentzeichen. Wo die Ergebnisse im Datensatz stehen oder welche Zeichenfolgen vor oder hinter dem Suchmuster stehen, spielt keine Rolle. ViaSuch%muster
filtern Sie Datensätze nach Ergebnissen, die mit Zeichen vor und nach dem%
beginnen und enden. -
Unterstrich
_
: Unterstriche ersetzen einzelne Zeichen im Suchmuster. Bei einer Suche nachS_RA
filtern Sie beispielsweise Ihre Daten nach allen Namen, die mit S anfangen und auf RA enden, wenn der zweite Buchstabe unbekannt ist. -
Eckklammern
[…]
: Legen fest, dass die Suche für die Zeichenmenge innerhalb der Klammern gilt. So können Sie beispielsweise mit[a-d]
festlegen, dass Sie im Suchmuster einen Buchstaben zwischen A und D suchen.
Diese Einsatzmöglichkeiten bietet der LIKE
-Operator
Die Einsatzmöglichkeiten für Abfragen und Suchen mit LIKE
sind nahezu unbegrenzt. Sie können zum Beispiel:
- Namenvarianten suchen, die mit einer bestimmten Zeichenfolge beginnen oder enden, wenn Ihnen der exakte Name unbekannt ist
- Nach E-Mail-Endungen wie .de suchen
- Exakte Übereinstimmungen mit konkreten Suchbegriffen ohne SQL-Wildcards filtern
- Produkte mit bestimmten Worten im Produktnamen filtern oder bestimmte Produkteigenschaften suchen
- Daten ausschließen, indem Sie den
NOT
-Operator mitLIKE
kombinieren - Ergebnisse beispielsweise nach Datum, Datumsbereich oder nach numerischen Werten wie Produktpreisen filtern
Effizientes Datenmanagement erfordert eine sichere, leistungsstarke Lösung für Ihr Datenbank-Management-System. Mit SQL-Server-Hosting von IONOS finden Sie flexible Server- und Hosting-Angebote, die zu Ihren Anforderungen passen.
- Bis zu 1 Gbit/s Bandbreite & unbegrenzt Traffic
- Schneller NVMe-SSD-Speicher
- Kostenlose Plesk Web Host Edition
Praktische Beispiele für die Suche mit SQL LIKE
Je nach Anwendungsfall und Datensatz kommen verschiedene Arten von LIKE
-Befehlen zum Einsatz. Unsere praktischen Beispiele veranschaulichen, wie SQL LIKE
funktioniert.
Filtern mit exaktem Suchbegriff
Stellen Sie sich vor, Sie suchen in der Tabelle „Kunden“ nach Kunden bzw. Kundinnen mit spezifischem Nachnamen. Indem Sie SQL LIKE
nutzen, rufen Sie alle Kunden bzw. Kundinnen mit dem exakten Nachnamen auf. Gleiches gilt für die Suche nach exakten numerischen Werten wie Produktpreisen.
Beispiel:
SELECT *
FROM kunden
WHERE nachname LIKE 'Meise'
sqlFiltern mit Prozentzeichen
Für das Filtern von größeren Datensätze nach Mustern nutzen Sie SQL-Wildcards. Mit Prozentzeichen können Sie beispielsweise in einer Kundentabelle alle Namen filtern, die mit „M“ beginnen und auf „er“ enden:
SELECT *
FROM kunden
WHERE nachname LIKE 'm%er'
sqlSuchen Sie nach allen E-Mail-Adressen, die auf .de enden, nutzen Sie folgende Syntax:
SELECT *
FROM kunden
WHERE e-mail-adresse LIKE '%.de'
sqlFiltern mit Unterstrich
Suchen Sie in der Tabelle „Kunden“ nach einem Nachnamen, von dem Sie nur die ersten zwei und die letzten zwei Buchstaben kennen, nicht aber den Buchstaben dazwischen? Dann sieht die Suche wie folgt aus:
SELECT *
FROM kunden
WHERE nachname LIKE 'Me_er'
sqlAusschließen von Daten mit NOT LIKE
Sie können die Suchanfrage mit dem SQL LIKE
-Operator umkehren, indem Sie ihn mit dem SQL NOT kombinieren. Auf diese Weise filtern Sie einen Datensatz nach Ergebnissen, die nicht dem Suchbegriff oder Suchmuster entsprechen. So können Sie zum Beispiel wie folgt nach allen Kunden bzw. Kundinnen suchen, deren Nachname nicht mit dem angegebenen Namen identisch ist:
SELECT *
FROM kunden
WHERE nachname NOT LIKE 'Meier'
sqlAlternativen zu SQL LIKE
Da SQL LIKE
zu den Vergleichsoperatoren zählt, stehen noch weitere SQL-Operatoren bereit, die ähnlich wie LIKE
funktionieren. Der Vorteil an LIKE
ist jedoch, dass Sie dank SQL-Wildcards wie Platzhaltern und Mustern mehr Flexibilität genießen und präzisere Ergebnisse erhalten – selbst bei ungenauen Suchbegriffen.
Operatoren, die so ähnlich funktionieren wie SQL LIKE
:
-
Ist-Gleich
=
: Filtert Ergebnisse, die exakt dem Suchbegriff entsprechen. -
Ist-Ungleich
!=
: Filtert Ergebnisse, die nicht exakt dem Suchbegriff entsprechen. -
Kleiner als
<
oder Größer als>
: Liefert numerische Werte aus Datensätzen, die kleiner oder größer als der gesuchte Wert sind. Mit<=
oder>=
filtern Sie wiederum nach Ergebnissen, die kleiner oder gleich oder auch größer oder gleich als der Suchwert sind.