Like

0

Der SQL LIKE Operator

Der LIKE Operator wird in einer WHERE Klausel verwendet, um in einer Spalte nach einem angegebenen Muster zu suchen.

Es gibt zwei Platzhalter, die häufig in Verbindung mit dem LIKE Operator verwendet werden:

  • Das Prozentzeichen % steht für null, ein oder mehrere Zeichen.
  • Das Unterstrichzeichen _ steht für ein einzelnes Zeichen.

Beispiel

Wählen Sie alle Kunden aus, die mit dem Buchstaben „a“ beginnen:

SELECT * FROM Customers
WHERE CustomerName LIKE 'a%';

Syntax

SELECT column1, column2, ...
FROM table_name
WHERE columnN LIKE pattern;

Demo Datenbank

Nachfolgend sehen Sie eine Auswahl aus der in den Beispielen verwendeten Kundentabelle:

KundenIDKundennameKontaktnameAddressStadtPostleitzahlLand
1
Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D.F.05021Mexico
3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D.F.05023Mexico
4
Around the HornThomas Hardy120 Hanover Sq.LondonWA1 1DPUK
5Berglunds snabbköpChristina BerglundBerguvsvägen 8LuleåS-958 22Sweden

Der _ Platzhalter

Das Platzhalterzeichen _ steht für ein einzelnes Zeichen.

Es kann sich um ein beliebiges Zeichen oder eine beliebige Zahl handeln, aber jedes _ steht für genau ein Zeichen.

Beispiel

Gibt alle Kunden aus einer Stadt zurück, die mit „L“ beginnt, gefolgt von einem Platzhalterzeichen, dann „nd“ und dann zwei Platzhalterzeichen:

SELECT * FROM Customers
WHERE city LIKE 'L_nd__';

Der % Platzhalter

Das % Platzhalterzeichen steht für eine beliebige Anzahl von Zeichen, auch für null Zeichen.

Beispiel

Gibt alle Kunden aus einer Stadt zurück, die den Buchstaben „L“ enthält:

SELECT * FROM Customers
WHERE city LIKE '%L%';

Beginnt mit

Um Datensätze zurückzugeben, die mit einem bestimmten Buchstaben oder einer bestimmten Phrase beginnen, fügen Sie am Ende des Buchstabens oder der Phrase das % hinzu.

Beispiel

Gibt alle Kunden zurück, die mit „La“ beginnen:

SELECT * FROM Customers
WHERE CustomerName LIKE 'La%';

Tipp: Sie können mit den Operatoren „UND“ oder „ODER“ auch beliebig viele Bedingungen kombinieren.

Beispiel

Gibt alle Kunden zurück, die mit „a“ oder „b“ beginnen:

SELECT * FROM Customers
WHERE CustomerName LIKE 'a%' OR CustomerName LIKE 'b%';

Endet mit

Um Datensätze zurückzugeben, die mit einem bestimmten Buchstaben oder einer bestimmten Phrase enden, fügen Sie am Anfang des Buchstabens oder der Phrase das % hinzu.

Beispiel

Gibt alle Kunden zurück, die mit „a“ enden:

SELECT * FROM Customers
WHERE CustomerName LIKE '%a';

Tipp: Sie können „beginnt mit“ und „endet mit“ auch kombinieren:

Beispiel

Gibt alle Kunden zurück, die mit „b“ beginnen und mit „s“ enden:

SELECT * FROM Customers
WHERE CustomerName LIKE 'b%s';

Enthält

Um Datensätze zurückzugeben, die einen bestimmten Buchstaben oder eine bestimmte Phrase enthalten, fügen Sie sowohl vor als auch nach dem Buchstaben oder der Phrase das % hinzu.

Beispiel

Gibt alle Kunden zurück, die die Phrase „oder“ enthalten.

SELECT * FROM Customers
WHERE CustomerName LIKE '%or%';

Platzhalter kombinieren

Alle Platzhalterzeichen, beispielsweise % und _, können in Kombination mit anderen Platzhaltern verwendet werden.

Beispiel

Gibt alle Kunden zurück, die mit „a“ beginnen und mindestens 3 Zeichen lang sind:

SELECT * FROM Customers
WHERE CustomerName LIKE 'a__%';

Beispiel

Gibt alle Kunden zurück, die an der zweiten Stelle ein „r“ haben:

SELECT * FROM Customers
WHERE CustomerName LIKE '_r%';

Ohne Wildcard

Wenn kein Platzhalter angegeben ist, muss die Phrase eine exakte Übereinstimmung aufweisen, um ein Ergebnis zurückzugeben.

Beispiel

Rückgabe aller Kunden aus Spanien:

SELECT * FROM Customers
WHERE Country LIKE 'Spain';
Nach oben scrollen