Fonction CAS MySQL
Exemple
Parcourez les conditions et renvoyez une valeur lorsque la première condition est remplie :
SELECT OrderID, Quantity,
CASE
WHEN Quantity > 30
THEN "The quantity is greater than 30"
WHEN Quantity =
30 THEN "The quantity is 30"
ELSE "The quantity is
under 30"
END
FROM OrderDetails;
Définition et utilisation
L'instruction CASE parcourt les conditions et renvoie une valeur lorsque la première condition est remplie (comme une instruction IF-THEN-ELSE). Ainsi, une fois qu'une condition est vraie, elle arrête de lire et renvoie le résultat.
Si aucune condition n'est vraie, il renverra la valeur dans la clause ELSE.
S'il n'y a pas de partie ELSE et qu'aucune condition n'est vraie, elle renvoie NULL.
Syntaxe
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
WHEN
conditionN THEN resultN
ELSE result
END;
Valeurs des paramètres
Parameter | Description |
---|---|
condition1, condition2, ...conditionN | Required. The conditions. These are evaluated in the same order as they are listed |
result1, result2, ...resultN | Required. The value to return once a condition is true |
Détails techniques
Travaille dans: | Depuis MySQL 4.0 |
---|
Plus d'exemples
Le SQL suivant ordonnera les clients par ville. Cependant, si City est NULL, alors triez par Country :
Exemple
SELECT CustomerName, City, Country
FROM Customers
ORDER BY
(CASE
WHEN City IS NULL THEN Country
ELSE City
END);