PostgreSQL IN

Zusammenfassung: In diesem Tutorial erfahren Sie, wie Sie den Operator PostgreSQL IN in der Klausel WHERE verwenden, um zu überprüfen, ob ein Wert mit einem Wert in einer Liste übereinstimmt.

PostgreSQL IN Operatorsyntax

Sie verwenden den Operator IN in der Klausel WHERE, um zu überprüfen, ob ein Wert mit einem Wert in einer Werteliste übereinstimmt.

Die Syntax des Operators IN lautet wie folgt:

Code language: SQL (Structured Query Language) (sql)

Der Operator IN gibt true zurück, wenn value mit einem beliebigen Wert in der Liste übereinstimmt, dh., value1 , value2 , …

Die Liste der Werte kann eine Liste von Literalwerten wie Zahlen, Zeichenfolgen oder das Ergebnis einer SELECT -Anweisung wie dieser sein:

Code language: SQL (Structured Query Language) (sql)

Die Abfrage in den Klammern wird als Unterabfrage bezeichnet, bei der es sich um eine Abfrage handelt, die in einer anderen Abfrage verschachtelt ist. Beachten Sie, dass Sie im folgenden Tutorial mehr über die Unterabfrage erfahren

PostgreSQL IN operator examples

Angenommen, Sie möchten die Mietinformationen der Kunden-ID 1 und 2 kennen, Sie können den Operator IN in der Klausel WHERE wie folgt verwenden:

Die folgende Abfrage verwendet die Operatoren equal (=) und OR anstelle des Operators IN. Sie entspricht der obigen Abfrage:

Die Abfrage, die den Operator IN verwendet, ist kürzer und lesbarer als die Abfrage, die die Operatoren equal (=) und OR verwendet. Darüber hinaus führt PostgreSQL die Abfrage mit dem Operator IN viel schneller aus als dieselbe Abfrage, die eine Liste von Operatoren OR verwendet.

PostgreSQL NOT IN operator

Sie können den Operator IN mit dem Operator NOT kombinieren, um Zeilen auszuwählen, deren Werte nicht mit den Werten in der Liste übereinstimmen.

Die folgende Anweisung findet beispielsweise alle Anmietungen, bei denen die Kunden-ID nicht 1 oder 2 ist.

Ähnlich wie beim Operator IN können Sie die Operatoren not equal (<>) und AND verwenden, um den Operator NOT IN zu schreiben:

Diese Abfrage gibt dieselbe Ausgabe zurück wie die obige Abfrage, die den Operator NOT IN verwendet.

PostgreSQL IN mit einer Unterabfrage

Die folgende Abfrage gibt eine Liste der Kunden-IDs aus der Tabelle rental mit dem Rückgabedatum zurück 2005-05-27:

Da diese Abfrage eine Liste von Werten zurückgibt, können Sie sie wie folgt als Eingabe für den Operator IN verwenden:

Weitere Informationen zur Unterabfrage finden Sie im Unterabfrage-Tutorial.

In diesem Tutorial haben Sie gelernt, wie Sie mit dem PostgreSQL-Operator IN überprüfen, ob ein Wert mit einem Wert in einer Werteliste übereinstimmt.

  • War dieses Tutorial hilfreich ?
  • JaNein



+