Les requêtes SQL complexes nécessitent souvent des opérations conditionnelles pour traiter les données efficacement.
Sans les bonnes techniques, vous risquez de multiplier les requêtes et de compliquer inutilement votre code SQL.
L’article explore l’utilisation de l’expression CASE en SQL, un outil puissant pour simplifier et optimiser vos requêtes conditionnelles.
Appréhendez les fondamentaux du langage SQL pour savoir assimiler ses fonctions standards.
Utiliser l'expression CASE SQL
L’expression CASE en SQL est utilisée pour effectuer des opérations conditionnelles. Elle permet d’exécuter différentes actions en fonction de la valeur d’une expression. C’est un outil puissant pour manipuler les résultats de vos requêtes, car il vous permet de créer des colonnes calculées, d’effectuer des classifications ou de gérer des cas particuliers dans vos résultats.
Syntaxe
Voici la syntaxe générale de l’expression CASE :
CASE expression
WHEN valeur1 THEN resultat1
WHEN valeur2 THEN resultat2
...
[ELSE resultat]
END;
- expression :l’expression à évaluer.
- valeur1, valeur2, … :les valeurs à comparer avec l’expression.
- resultat1, resultat2, … :les résultats à retourner si l’expression correspond à une valeur.
- ELSE :un résultat par défaut si aucune des valeurs ne correspond.
- END :termine l’expression CASE.
- Exemple d’utilisation de l’expression CASE
SELECT nom,
prenom,
fonction,
salaire,
CASE fonction
WHEN 'Représentant(e)' THEN salaire * 1.2
WHEN 'Chef des ventes' THEN salaire * 1.1
ELSE salaire * 1.1
END AS 'Simulation_Augmentation'
FROM employes;
Explication
- Sélection des Colonnes :La requête récupère les colonnes nom, prenom, fonction, et salaire de la table employes.
- Expression CASE :Si la fonction de l’employé est ‘Représentant(e)’, le salaire est multiplié par 1.2 (augmentation de 20%).Si la fonction est ‘Chef des ventes’, le salaire est multiplié par 1.1 (augmentation de 10%).Pour toutes les autres fonctions, le salaire est également multiplié par 1.1 (augmentation de 10%).
- Alias :Le résultat de l’expression CASE est renvoyé sous la colonne Simulation_Augmentation, qui montre le salaire simulé après augmentation.
- Résultat Attendu
La requête retournera une liste d’employés avec leurs noms, prénoms, fonctions, salaires d’origine, et leurs salaires après simulation d’augmentation, selon leur fonction.
- L’expression CASE Généralisée
L’expression CASE est un outil puissant en SQL qui permet d’effectuer des opérations conditionnelles au sein de vos requêtes. Elle peut être utilisée pour évaluer des expressions et retourner des valeurs différentes en fonction des conditions spécifiées. Cela vous permet de créer des colonnes dérivées basées sur des critères logiques sans avoir besoin d’écrire plusieurs requêtes.
- Syntaxe de l’Expression CASE
Voici la syntaxe générale de l’expression CASE :
CASE
WHEN condition1 THEN resultat1
WHEN condition2 THEN resultat2
...
[ELSE resultat_defaut]
END
- Exemple d’utilisation de l’expression CASE généralisée
SELECT nom_produit,
unites_stock,
CASE
WHEN unites_stock < 5 THEN 'Alerte stock'
WHEN unites_stock BETWEEN 5 AND 100 THEN 'Stock OK'
WHEN unites_stock > 100 THEN 'Surstock'
END AS 'Etat_stock'
FROM produits;
Explication
- Sélection des Colonnes :La requête récupère les colonnes nom_produit et unites_stock de la table produits.
- Expression CASE :Si le nombre d’unités en stock est inférieur à 5, l’état du stock sera ‘Alerte stock’.Si le nombre d’unités en stock est compris entre 5 et 100, l’état sera ‘Stock OK’.Si le nombre d’unités en stock est supérieur à 100, l’état sera ‘Surstock’.
- Alias :Le résultat de l’expression CASE est renvoyé sous la colonne Etat_stock, indiquant l’état actuel du stock pour chaque produit.
- Résultat Attendu
La requête retournera une liste de produits avec leurs noms, unités en stock et l’état de leur stock basé sur les conditions spécifiées, permettant ainsi une visualisation rapide de la situation des stocks pour chaque produit.
Formez-vous gratuitement avec Alphorm !
Maîtrisez les compétences clés en IT grâce à nos formations gratuites et accélérez votre carrière dès aujourd'hui.
FAQ
Qu'est-ce que l'expression CASE en SQL?
Comment fonctionne la syntaxe CASE en SQL?
Quels sont les exemples d'utilisation de CASE en SQL?
Pourquoi utiliser l'expression CASE en SQL?
Comment l'expression CASE améliore-t-elle les requêtes SQL?
Conclusion
L’expression CASE est un outil indispensable pour quiconque travaille régulièrement avec SQL. En quoi l’amélioration de vos requêtes avec CASE pourrait-elle transformer votre manière de gérer les données?