MySQL EXISTS

Dans ce tutoriel nous allons découvrir comment utiliser l’opérateur MySQL EXISTS pour vérifier si une donnée existe dans une table et quand l’utiliser pour améliorer les performances des requêtes.
 
 

L’opérateur EXISTS

L’opérateur EXISTS est un opérateur booléen qui renvoie true ou false. L’opérateur EXISTS est souvent utilisé pour vérifier l’existence des lignes renvoyées par une sous-requête.

La syntaxe de base de l’opérateur EXISTS:

SELECT 
    colonne1, colonne2, ..., colonne_n
FROM
    table_name
WHERE
    [NOT] EXISTS(sous-requête);

Si la sous-requête renvoie au moins une ligne, l’opérateur EXISTS renvoie true, sinon il renvoie false.

En plus, l’opérateur EXISTS met fin immédiatement au traitement ultérieur dès qu’il trouve une ligne correspondante, ce qui peut contribuer à améliorer les performances de la requête.

L’opérateur NOT annule l’opérateur EXISTS. En d’autres termes, NOT EXISTS renvoie true si la sous-requête ne renvoie aucune ligne, sinon elle renvoie false.
Liste des commandes MySQLListe des commandes MySQLDans ce tutoriel vous allez découvrir les différentes commandes MySQL qui devraient être utiles pour travailler avec des bases de données.   1. Pour vous…Lire plus  

Exemple:

Dans l’exemple ci-dessous, nous avons deux tables, à savoir « Clients » et « Commandes », qui contiennent les données suivantes:
 

 

 
L’instruction suivante renvoie TRUE si il existe un client dont le prix totale du commande est inférieur à 200:

SELECT Nom
FROM Clients
WHERE EXISTS (
       SELECT NumCommande 
           FROM Commandes 
           WHERE Commandes.ClientID = Clients.ClientID 
           AND Totale < 200
);


 

Questions techniques sur MYSQLQuestions techniques sur MYSQL – Partie 1Nous avons divisé cette collection de questions techniques sur MYSQL sous sept chapitres là, c’est la premiere, puis vous trouverez la deuxième partie, la troisième…Lire plus

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *