PostgreSQL LIKE, Not Like, Wildcards (%, _ ) Beispiele
โก Intelligente Zusammenfassung
PostgreSQL LIKE vergleicht Text mit Mustern mithilfe zweier Platzhalter โ dem Prozentzeichen und dem Unterstrich. Dieses Tutorial zeigt die Verwendung von LIKE und NOT LIKE in SELECT-Anweisungen anhand von Beispielen in psql und pgAdmin.

Das PostgreSQL LIKE Der Operator vergleicht Textwerte mithilfe von Platzhaltern mit Mustern. Wenn der Suchausdruck mit dem Muster รผbereinstimmt, gibt LIKE einen Wert zurรผck. trueWildcards funktionieren in der WHERE Klausel von SELECT, UPDATE, INSERTden DELETE.
Was sind PostgreSQL Platzhalter?
PostgreSQL Unterstรผtzt zwei LIKE-Wildcards:
- Prozentzeichen (
%): Passt zu null, einem oder mehreren Zeichen oder Ziffern. - Unterstrich (
_): Stimmt genau mit einem Zeichen oder einer Ziffer รผberein.
Die beiden Symbole kรถnnen innerhalb desselben Musters kombiniert werden. Wenn LIKE ohne Wildcards verwendet wird, verhรคlt es sich wie das Gleichheitszeichen (=) Operator.
PostgreSQL LIKE-Syntax
Die grundlegende LIKE-Syntax lautet:
expression LIKE pattern [ ESCAPE 'escape-character' ]
- Ausdruck โ ein Zeichenausdruck, typischerweise ein Spalten- oder Feldname.
- Anleitungen โ ein Zeichenausdruck, der Platzhalter enthรคlt.
- Escape-Zeichen โ optional. Ermรถglicht die wรถrtliche Zuordnung.
%or_Zeichen. Wird der Backslash weggelassen (\) ist das Standard-Escapezeichen.
PostgreSQL LIKE mit dem %-Wildcard
Das % Das Zeichen kann null, einem oder mehreren Zeichen entsprechen. Betrachten Sie Folgendes: Book Tabelle:
Um Bรผcher zu finden, deren Name mit โLearโ beginnt, fรผhren Sie die unten stehende Abfrage aus.
SELECT *
FROM
Book
WHERE
name LIKE 'Lear%';
Die Abfrage liefert folgendes Ergebnis:
Um Bรผcher zu finden, deren Titel irgendwo โvonโ enthรคlt:
SELECT *
FROM
Book
WHERE
name LIKE '%by%';
Die Abfrage liefert folgendes Ergebnis:
PostgreSQL LIKE mit dem _ Wildcard
Das _ โsignโ entspricht genau einem Zeichen. Die folgende Abfrage findet Namen, bei denen das erste Zeichen ein beliebiger Buchstabe ist, gefolgt von โearnโ und dann einem beliebigen Suffix:
SELECT *
FROM
Book
WHERE
name LIKE '_earn%';
Die Abfrage liefert folgendes Ergebnis:
Ein weiteres Beispiel โ finde jeden Text, der mit โBeginnerโ plus einem weiteren Zeichen endet:
SELECT *
FROM
Book
WHERE
name LIKE '%Beginner_';
Die Abfrage liefert folgendes Ergebnis:
PostgreSQL NICHT WIE OperaDo.
Kombinieren Sie LIKE mit NOT, um Zeilen zurรผckzugeben, die den folgenden Operatoren entsprechen: kein Frontalunterricht. Passe das Muster an. Liste beispielsweise alle Bรผcher auf, deren Name nicht mit โPostโ beginnt:
SELECT *
FROM
Book
WHERE
name NOT LIKE 'Post%';
Die Abfrage liefert folgendes Ergebnis:
Nur ein Buch erfรผllt die Bedingung. Listen Sie nun alle Bรผcher auf, deren Name die Bedingung erfรผllt. kein Frontalunterricht. enthalten das Wort โMadeโ:
SELECT *
FROM
Book
WHERE
name NOT LIKE '%Made%';
Die Abfrage liefert folgendes Ergebnis:
Drei Zeilen erfรผllen die Bedingung.
Verwendung von LIKE mit pgAdmin
Die gleichen Abfragen kรถnnen auch grafisch im Abfragetool von pgAdmin ausgefรผhrt werden.
% Platzhalter in pgAdmin
Schritt 1) Melden Sie sich bei pgAdmin an.
Schritt 2) Klicken Sie in der Navigationsleiste links auf Datenbanken, dann klick Demo.
Schritt 3) Geben Sie die Abfrage im Abfrageeditor ein:
SELECT *
FROM
Book
WHERE
name LIKE 'Lear%';
Schritt 4) Klicken Sie auf Ausfรผhren.
Im Ergebnisbereich werden die passenden Bรผcher angezeigt:
Um nach einem Buch zu suchen, dessen Titel irgendwo โvonโ enthรคlt:
Schritt 1) Geben Sie Folgendes im Abfrageeditor ein:
SELECT *
FROM
Book
WHERE
name LIKE '%by%';
Schritt 2) Klicken Sie auf Ausfรผhren.
Im Ergebnisbereich wird Folgendes angezeigt:
_ Platzhalter in pgAdmin
Schritt 1) Melden Sie sich bei pgAdmin an.
Schritt 2) Klicken Sie in der Navigationsleiste links auf Datenbanken, dann klick Demo.
Schritt 3) Geben Sie die Abfrage im Abfrageeditor ein:
SELECT *
FROM
Book
WHERE
name LIKE '_earn%';
Schritt 4) Klicken Sie auf Ausfรผhren.
Im Ergebnisbereich wird Folgendes angezeigt:
Schritt 5) Fรผhren Sie das zweite Beispiel aus:
- Geben Sie die Abfrage im Abfrageeditor ein:
SELECT *
FROM
Book
WHERE
name LIKE '%Beginner_';
- Klicken Sie auf Ausfรผhren.
Im Ergebnisbereich wird Folgendes angezeigt:
NICHT WIE in pgAdmin
Schritt 1) Melden Sie sich bei pgAdmin an.
Schritt 2) Klicken Sie in der Navigationsleiste links auf Datenbanken, dann klick Demo.
Schritt 3) Um alle Bรผcher aufzulisten, deren Name nicht mit โPostโ beginnt, geben Sie Folgendes ein:
SELECT *
FROM
Book
WHERE
name NOT LIKE 'Post%';
Schritt 4) Klicken Sie auf Ausfรผhren.
Im Ergebnisbereich wird Folgendes angezeigt:
Um Bรผcher aufzulisten, deren Name das Wort โMadeโ nicht enthรคlt:
Schritt 1) Geben Sie Folgendes im Abfrageeditor ein:
SELECT *
FROM
Book
WHERE
name NOT LIKE '%Made%';
Schritt 2) Klicken Sie auf Ausfรผhren.
Im Ergebnisbereich wird Folgendes angezeigt:
Laden Sie die in diesem Tutorial verwendete Datenbank herunter..























