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 MySQL

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 MYSQL

Une réflexion sur “MySQL EXISTS

  • mai 15, 2023 à 11:17 pm
    Permalien

    Merci beaucoup de votre aide, ça fait longtemps que je suis bloqué, c’est poof

    Répondre

Laisser un commentaire

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