PostgreSQL IN, Not IN avec des exemples
Qu’est ce qu' PostgreSQL Dans ?
L'opérateur IN est utilisé dans une clause WHERE qui permet de vérifier si une valeur est présente dans une liste d'autres valeurs. Operation permet de réduire le besoin de plusieurs conditions OR 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 de chaînes ou même le résultat de sortie d'un 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.
Avec du 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 ce qui suit :
Nous avons une liste de trois noms. Nous recherchons si nous pouvons trouver l'un de ces noms dans la colonne de nom de la table Employés. Le Kate Joel a été associé à l'un des enregistrements de la table et ses détails ont été renvoyés.
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.
Utilisation de l'opérateur NOT
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
Voyons maintenant comment les actions peuvent être effectuées à l'aide de 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 à 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 à 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 :
Utilisation de l'opérateur NOT
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 à 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 :
Résumé
- L'opérateur IN est utilisé avec l'opérateur WHERE. Il permet de vérifier si une valeur particulière est présente dans un tableau spécifique.
- L'opérateur IN permet de réduire le besoin de plusieurs opérateurs OR dans les instructions SELECT, UPDATE, INSERT ou DELETE.
- Lors de la création d'une liste de caractères pour vérifier la présence d'une valeur, chaque valeur de la liste doit être placée entre guillemets simples.
- L'opérateur IN peut également être utilisé avec des valeurs numériques.
- Lorsque l'opérateur IN est utilisé avec l'opérateur NOT, il renvoie toutes les valeurs introuvables dans la colonne spécifiée.
Téléchargez la base de données utilisée dans ce tutoriel