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 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
Partagez cet article

Laisser un commentaire

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