PostgreSQL IN

Résumé: dans ce tutoriel, vous apprendrez à utiliser l’opérateur PostgreSQL IN dans la clause WHERE pour vérifier si une valeur correspond à une valeur d’une liste.

PostgreSQL DANS la syntaxe des opérateurs

Vous utilisez l’opérateur IN dans la clause WHERE pour vérifier si une valeur correspond à une valeur d’une liste de valeurs.

La syntaxe de l’opérateur IN est la suivante:

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

L’opérateur IN renvoie true si value correspond à n’importe quelle valeur de la liste, c’est-à-dire, value1 , value2 , …

La liste de valeurs peut être une liste de valeurs littérales telles que des nombres, des chaînes ou le résultat d’une instruction SELECT comme celle-ci:

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

La requête à l’intérieur des parenthèses est appelée une sous-requête, qui est une requête imbriquée dans une autre requête. Notez que vous en apprendrez plus sur la sous-requête dans le didacticiel suivant

PostgreSQL DANS les exemples d’opérateurs

Supposons que vous souhaitiez connaître les informations de location des id client 1 et 2, vous pouvez utiliser l’opérateur IN dans la clause WHERE comme suit:

La requête suivante utilise les opérateurs equal (=) et OR au lieu de l’opérateur IN. Elle est équivalente à la requête ci-dessus :

La requête qui utilise l’opérateur IN est plus courte et plus lisible que la requête qui utilise les opérateurs equal (=) et OR. De plus, PostgreSQL exécute la requête avec l’opérateur IN beaucoup plus rapidement que la même requête qui utilise une liste d’opérateurs OR.

PostgreSQL PAS DANS l’opérateur

Vous pouvez combiner l’opérateur IN avec l’opérateur NOT pour sélectionner des lignes dont les valeurs ne correspondent pas aux valeurs de la liste.

Par exemple, la déclaration suivante indique que toutes les locations dont l’ID client n’est pas 1 ou 2.

Similaire à l’opérateur IN, vous pouvez utiliser les opérateurs not equal (<>) et AND pour écrire l’opérateur NOT IN :

Cette requête renvoie la même sortie que la requête ci-dessus qui utilise l’opérateur NOT IN.

PostgreSQL DANS avec une sous-requête

La requête suivante renvoie une liste d’ID client de la table rental avec la date de retour est 2005-05-27:

Comme cette requête renvoie une liste de valeurs, vous pouvez l’utiliser comme entrée de l’opérateur IN comme ceci:

Pour plus d’informations sur la sous-requête, consultez le tutoriel sur la sous-requête.

Dans ce tutoriel, vous avez appris à utiliser l’opérateur PostgreSQL IN pour vérifier si une valeur correspond à une valeur d’une liste de valeurs.

  • Ce tutoriel a-t-il été utile?
  • Ouinon



+