Instruction CASE avec MySQL

Dans ce tutoriel nous allons découvrir comment utiliser l’expression CASE dans MySQL avec une syntaxe et des exemples. L’expression CASE vous permet d’ajouter une logique if-else à une requête. En générale, vous pouvez utiliser l’expression CASE n’importe où, par exemple dans les clauses SELECT, WHERE et ORDER BY.
 
 

Syntaxe 1:
CASE valeur
   WHEN valeur1 THEN instruction1
   WHEN valeur2 THEN instruction2
   …
   [ELSE instruction3]
END

Dans cette syntaxe, CASE fait correspondre la valeur avec les valeurs « valeur1 », « valeur2 », etc., et renvoie l’instruction correspondant. Si la valeur n’est égale à aucune valeurs CASE renvoie l’instruction dans la clause ELSE si la clause ELSE est spécifiée.
 

Exemple:
SELECT
  CASE niveau
    WHEN 'A' THEN 'Utilisateur débutant'
    WHEN 'B' THEN 'Utilisateur indépendant'
    WHEN 'C' THEN 'Utilisateur expérimenté'
    ELSE 'Niveau n`existe pas!'
  END AS niveau_langue
FROM grades;

 
 

Syntaxe 2:
CASE
   WHEN condition1 THEN instruction1
   WHEN condition2 THEN instruction2
   …
   [ELSE instruction3]
END

Dans cette syntaxe, CASE évalue les conditions spécifiées dans les clauses WHEN. Si une condition est évaluée à true. CASE renvoie l’instruction correspondant dans la clause THEN. Sinon, l’instruction spécifié dans la clause ELSE est renvoyé. Si la clause ELSE n’existe pas, l’expression CASE renvoie NULL.
 

Exemple:
SELECT
  CASE
    WHEN points < 10 THEN 'échec'
    WHEN points BETWEEN 10 AND 12 THEN 'passable'
    WHEN points BETWEEN 12 AND 16 THEN 'bien'
    ELSE 'très bien'
  END AS resultat
FROM test;
Questions techniques sur MYSQL

Laisser un commentaire

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