PostgreSQL IN, Not IN avec des exemples
⚡ Résumé intelligent
PostgreSQL L'opérateur IN vérifie si une valeur apparaît dans une liste ou une sous-requête à l'intérieur d'une clause WHERE, remplaçant plusieurs conditions OR dans les instructions SELECT, UPDATE, INSERT et DELETE pour un filtrage plus propre, plus rapide et plus lisible.

Qu'est-ce que le PostgreSQL DANS?
L'opérateur IN est utilisé dans une clause WHERE pour vérifier si une valeur est présente dans une liste d'autres valeurs. L'opération IN permet de réduire le nombre de conditions OR nécessaires dans les instructions SELECT, UPDATE, INSERT ou DELETE.
Syntaxe
L'opérateur IN prend la syntaxe suivante :
value IN (value_1, value_2, ...)
La valeur est la valeur que vous recherchez dans la liste.
Les value_1, value_2… sont les valeurs de la liste.
Si la valeur est trouvée dans la liste, l'opérateur renverra un vrai.
La liste peut être un ensemble de nombres ou de chaînes de caractères, ou même le résultat de sortie d'une opération. Instruction SELECT comme indiqué ci-dessous:
value IN (SELECT value FROM table-name);
L’instruction placée entre parenthèses est appelée sous-requête.
PostgreSQL EN AVEC LE CARACTÈRE
Laissez-nous vous montrer comment utiliser l'opérateur IN avec des valeurs de caractères.
Considérez le tableau suivant:
Employés :
Exécutons la requête suivante sur la table ci-dessus :
SELECT * FROM Employees WHERE name IN ('James John', 'Mercy Bush', 'Kate Joel');
Il renvoie le résultat suivant :
Nous disposons d'une liste de trois noms. Nous cherchons à savoir si l'un de ces noms figure dans la colonne « Nom » de la table « Employés ». Kate Joel a été trouvée dans une entrée de la table et ses informations ont été affichées.
PostgreSQL EN Avec numérique
Voyons maintenant comment utiliser l’opérateur IN avec des valeurs numériques.
Considérez le tableau des prix ci-dessous :
Le prix :
Nous pouvons exécuter la requête suivante sur la table :
SELECT * FROM Price WHERE price IN (200, 308, 250, 550);
Cela renvoie les éléments suivants :
Nous avons créé une liste avec 4 valeurs numériques. Nous vérifions si nous pouvons faire correspondre l'une de ces valeurs avec les valeurs contenues dans la colonne prix du tableau Prix. Deux valeurs ont été mises en correspondance et leurs détails ont été renvoyés.
Utiliser le NON Operator
L'opérateur IN peut être utilisé avec l'opérateur NOT. Il renvoie les valeurs introuvables dans la colonne spécifiée. Nous utiliserons le tableau des prix pour le démontrer.
SELECT * FROM Price WHERE price NOT IN (200, 400, 190, 230);
Cela renverra ce qui suit :
Nous avons créé une liste avec 4 valeurs numériques. Nous vérifions la colonne prix du tableau Prix pour les valeurs qui ne font pas partie de la liste. Deux valeurs, 250 et 300, n'ont pas été trouvées. Leurs coordonnées ont donc été restituées.
Utiliser pgAdmin
En dehors de l'interpréteur de commandes SQL, les mêmes requêtes IN et NOT IN peuvent être exécutées visuellement via l'interface pgAdmin.
Avec du caractère
Pour accomplir la même chose via pgAdmin, procédez comme suit :
Étape 1) Connectez-vous à votre compte pgAdmin.
Étape 2)
- Dans la barre de navigation de gauche, cliquez sur Bases de données.
- Cliquez sur Démo.
Étape 3) Tapez la requête dans l'éditeur de requêtes :
SELECT * FROM Employees WHERE name IN ('James John', 'Mercy Bush', 'Kate Joel');
Étape 4) Cliquez sur le bouton Exécuter.
Il devrait renvoyer ce qui suit :
Avec numérique
Pour accomplir la même chose via pgAdmin, procédez comme suit :
Étape 1) Connectez-vous à votre compte pgAdmin.
Étape 2)
- Dans la barre de navigation de gauche, cliquez sur Bases de données.
- Cliquez sur Démo.
Étape 3) Tapez la requête dans l'éditeur de requêtes :
SELECT * FROM Price WHERE price IN (200, 308, 250, 550);
Étape 4) Cliquez sur le bouton Exécuter.
Il devrait renvoyer ce qui suit :
Utiliser le NON Operator
Pour accomplir la même chose via pgAdmin, procédez comme suit :
Étape 1) Connectez-vous à votre compte pgAdmin.
Étape 2)
- Dans la barre de navigation de gauche, cliquez sur Bases de données.
- Cliquez sur Démo.
Étape 3) Tapez la requête dans l'éditeur de requêtes :
SELECT * FROM Price WHERE price NOT IN (200, 400, 190, 230);
Étape 4) Cliquez sur le bouton Exécuter.
Il devrait renvoyer ce qui suit :
Téléchargez la base de données utilisée dans ce tutoriel














