SQL CASE



SQL > SQL Avancé > Case 

CASE permet de fournir le type de logique si-alors-autre à SQL. Sa syntaxe est :

SELECT CASE ("nom de colonne")
  WHEN "condition1" THEN "résultat1"
  WHEN "condition2" THEN "résultat2"
  ...
  [ELSE "résultatN"]
  END
FROM "nom de table";

"condition" peut être une valeur ou une expression statique. La clause ELSE est optionnelle.

Dans notre exemple de la table Store_Information,

Table Store_Information
Store_Name Sales Txn_Date
Los Angeles 1500 05-Jan-1999
San Diego 250 07-Jan-1999
San Francisco 300 08-Jan-1999
Boston 700 08-Jan-1999

Pour multiplier le montant des ventes de 'Los Angeles' par 2 et le montant des ventes de 'San Diego' par 1,5, il faut saisir :

SELECT Store_Name, CASE Store_Name
  WHEN 'Los Angeles' THEN Sales * 2
  WHEN 'San Diego' THEN Sales * 1.5
  ELSE Sales
  END
"Nouvelles Ventes",
Txn_Date
FROM Store_Information;

"Nouvelles Ventes" est le nom donné à la colonne avec l’instruction CASE.

Résultat:

Store_Name Nouvelles Ventes Txn_Date
Los Angeles 3000 05-Jan-1999
San Diego 375 07-Jan-1999
San Francisco 300 08-Jan-1999
Boston 700 08-Jan-1999

SQL Rang >>



Copyright © 2014   1keydata.com   Tous droits réservés.


SQL Avancé
SQL UNION
SQL UNION ALL
SQL INTERSECT
SQL MINUS
SQL Sous-requête
SQL EXISTS
SQL CASE
SQL Rang
SQL Médiane
SQL Exécution totale
SQL Pourcentage du total
SQL Pourcentage du total cumulatif




Plan du site