PostgreSQL LIKE, Not Like, Wildcards (%, _) Beispiele

Inhaltsverzeichnis:

Anonim

Der PostgreSQL LIKE-Operator hilft uns, Textwerte mithilfe von Platzhaltern mit Mustern abzugleichen. Es ist möglich, den Suchausdruck mit dem Musterausdruck abzugleichen.

Wenn eine Übereinstimmung auftritt, gibt der LIKE-Operator true zurück. Mit Hilfe des Operators LIKE können Platzhalter in der WHERE-Klausel der Anweisungen SELECT, UPDATE, INSERT oder DELETE verwendet werden.

In diesem PostgreSQL-Tutorial lernen Sie Folgendes:

  • Platzhalter
  • Syntax
  • % Platzhalter verwenden
  • Verwenden des Platzhalters _
  • Verwenden des NOT-Operators
  • Verwenden von pgAdmin

Platzhalter

Es gibt nur zwei Platzhalter, die zusammen mit verwendet werden können

  • Prozentzeichen (%)
  • Unterstrich (_)

Das Prozentzeichen (%) wird verwendet, um null, eins oder viele Zeichen oder Zahlen darzustellen.

Der Unterstrich-Platzhalter (_) wird verwendet, um ein Zeichen oder eine Zahl darzustellen. Diese Symbole können auch kombiniert werden. Wenn der LIKE-Operator nicht zusammen mit diesen beiden Zeichen verwendet wird, verhält er sich wie der Gleichheitsoperator.

Syntax

Hier ist die Syntax für den LIKE-Operator:

expression LIKE pattern [ ESCAPE 'escape-character' ]

Der Ausdruck ist ein Zeichenausdruck wie eine Spalte oder ein Feld.

Das Muster ist ein Zeichenausdruck mit Mustervergleich.

Das Escape-Zeichen ist ein optionaler Parameter. Es ermöglicht das Testen von Literalinstanzen von Platzhalterzeichen wie% und _. Wenn es nicht angegeben ist, wird das \ als Escape-Zeichen verwendet.

% Platzhalter verwenden

Wie bereits erwähnt, entspricht das% -Zeichen null, einem oder mehreren Zeichen oder Zahlen. Betrachten Sie die folgende Tabelle:

Buch:

Wir wollen das Buch, dessen Name "Lear" ist

… "Um dieses Ergebnis zu erhalten, können wir den folgenden Befehl ausführen:
SELECT *FROMBookWHEREname LIKE 'Lear%';

Dies gibt Folgendes zurück:

Das Buch wurde gefunden.

Lassen Sie uns nach einem Buch "by" in seinem Namen suchen:

SELECT *FROMBookWHEREname LIKE '%by%';

Dies gibt Folgendes zurück:

Verwenden des Platzhalters _

Wie bereits erwähnt, steht das Zeichen _ für ein Zeichen oder eine Zahl. Es kann wie folgt verwendet werden:

SELECT *FROMBookWHEREname LIKE '_earn%';

Dies gibt Folgendes zurück:

Hier ist ein weiteres Beispiel:

SELECT *FROMBookWHEREname LIKE '%Beginner_';

Dies gibt Folgendes zurück:

Verwenden des NOT-Operators

Wenn der LIKE-Operator mit dem NOT-Operator kombiniert wird, wird jede Zeile zurückgegeben, die nicht mit dem Suchmuster übereinstimmt. Um beispielsweise ein Buch anzuzeigen, dessen Name nicht mit "post" beginnt, können Sie den folgenden Befehl ausführen:

SELECT *FROMBookWHEREname NOT LIKE 'Post%';

Dies gibt Folgendes zurück:

Nur ein Buch erfüllte die Suchbedingung. Sehen wir uns die Liste der Bücher an, die kein Wort "Made" haben:

SELECT *FROMBookWHEREname NOT LIKE '%Made%';

Dies gibt Folgendes zurück:

3 Zeilen erfüllten die Suchbedingung.

Verwenden von pgAdmin

Nun wollen wir sehen, wie die Aktionen mit pgAdmin ausgeführt werden können.

% Platzhalter verwenden

Schritt 1) Melden Sie sich bei Ihrem pgAdmin-Konto an.

Schritt 2)

  1. Klicken Sie in der Navigationsleiste links auf Datenbanken.
  2. Klicken Sie auf Demo.

Schritt 3) Geben Sie die Abfrage in den Abfrageeditor ein:

SELECT *FROMBookWHEREname LIKE 'Lear%';

Schritt 4) Klicken Sie auf die Schaltfläche Ausführen.

Es sollte Folgendes zurückgeben:

So suchen Sie nach einem Buch "by" in seinem Namen:

Schritt 1) Geben Sie den folgenden Befehl in den Abfrageeditor ein:

SELECT *FROMBookWHEREname LIKE '%by%';

Schritt 2) Klicken Sie auf die Schaltfläche Ausführen.

Es sollte Folgendes zurückgeben:

Verwenden des Platzhalters _

Schritt 1) Melden Sie sich bei Ihrem pgAdmin-Konto an.

Schritt 2)

  1. Klicken Sie in der Navigationsleiste links auf Datenbanken.
  2. Klicken Sie auf Demo.

Schritt 3) Geben Sie die Abfrage in den Abfrageeditor ein:

SELECT *FROMBookWHEREname LIKE '_earn%';

Schritt 4) Klicken Sie auf die Schaltfläche Ausführen.

Es sollte Folgendes zurückgeben:

Schritt 5) So führen Sie das zweite Beispiel aus:

  1. Geben Sie die folgende Abfrage in den Abfrageeditor ein:
    SELECT *FROMBookWHEREname LIKE '%Beginner_';
  2. Klicken Sie auf die Schaltfläche Ausführen.

Es sollte Folgendes zurückgeben:

Verwenden des NOT-Operators

Schritt 1) Melden Sie sich bei Ihrem pgAdmin-Konto an.

Schritt 2)

  1. Klicken Sie in der Navigationsleiste links auf Datenbanken.
  2. Klicken Sie auf Demo.

Schritt 3) Um alle Bücher anzuzeigen, deren Namen nicht mit "Posten" beginnen, geben Sie die Abfrage in den Abfrageeditor ein:

SELECT *FROMBookWHEREname NOT LIKE 'Post%';

Schritt 4) Klicken Sie auf die Schaltfläche Ausführen.

Es sollte Folgendes zurückgeben:

So zeigen Sie die Liste der Bücher an, deren Namen nicht das Wort "Made" enthalten:

Schritt 1) Geben Sie die folgende Abfrage in den Abfrageeditor ein:

SELECT *FROMBookWHEREname NOT LIKE '%Made%';

Schritt 2) Klicken Sie auf die Schaltfläche Ausführen.

Es sollte Folgendes zurückgeben:

Zusammenfassung:

  • PostgreSQL LIKE wird verwendet, um Textwerte mithilfe von Platzhaltern mit Mustern abzugleichen.
  • Mit der LIKE-Klausel können Sie Platzhalter in SELECT-, UPDATE-, INSERT- oder DELETE-Anweisungen verwenden.
  • Der Platzhalter% entspricht einem oder mehreren Werten. Die Werte können Zahlen oder Zeichen sein.
  • Der Platzhalter _ entspricht genau einem Wert. Der Wert kann ein Zeichen oder eine Zahl sein.
  • Der LIKE-Operator kann mit dem NOT-Operator kombiniert werden, um eine Zeile zurückzugeben, die nicht mit dem Suchmuster übereinstimmt.

Laden Sie die in diesem Tutorial verwendete Datenbank herunter