SQL CASE




SQL > Linguagem SQL avançada > Case

CASE é utilizado para fornecer o tipo de lógica "if-then-else" à linguagem SQL. A sua sintaxe é:

SELECT CASE ("nome_coluna")
  WHEN "condição1" THEN "resultado1"
  WHEN "condição2" THEN "resultado2"
  ...
  [ELSE "resultadoN"]
  END
FROM "nome_tabela";

"condição" pode ser um valor estático ou uma expressão. A cláusula ELSE é opcional.

No nosso exemplo, a Tabela Store_Information,

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

se quisermos multiplicar o montante de vendas de 'Los Angeles' por 2 e o montante de vendas de 'San Diego' por 1,5, escrevemos,

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' é o nome dado à coluna com a instrução CASE.

Resultado:

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   Todos os direitos reservados.