SQL CASE





SQL > SQL Avanzato > Case

La parola chiave CASE viene utilizzata per fornire il tipo di logica if-then-else (se-allora-altrimenti) al linguaggio SQL. La sintassi è:

SELECT CASE ("nome_di_colonna")
  WHEN "condizionale_1" THEN "risultato_1"
  WHEN "condizionale_2" THEN "risultato_2"
  ...
  [ELSE "risultato_N"]
  END
FROM "nome_della_tabella";

"condizionale" può essere un valore statico o un'espressione. La clausola ELSE è facoltativa.

Sempre prendendo come esempio la tabella Store_Information,

Tabella Store_Information
Store_NameSalesTxn_Date
Los Angeles150005-Jan-1999
San Diego25007-Jan-1999
San Francisco30008-Jan-1999
Boston70008-Jan-1999

se si desidera moltiplicare la quantità delle vendite da "Los Angeles" con 2 e la quantità delle vendite di "San Diego" con 1,5, è necessario digitare:

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

"New Sales" è il nome assegnato alla colonna contenente l’istruzione CASE.

Risultato:

Store_Name New Sales 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 NULL >>



Copyright © 2016   1keydata.com   Tutti i diritti riservati