Escolar Documentos
Profissional Documentos
Cultura Documentos
Case
Expressões CASE
SELECT
SELECT colunas,
CASE
...
END
Como exemplo, podemos imaginar uma situação em que desejamos dar um
desconto sobre o preço de venda CDs em função do preço. Quanto maior o preço de
venda, maior o desconto. Veja:
case
preco_venda * .8
else
preco_venda * .7
from cd
Veja que foi acrescentado após o END do comando o nome que queremos para a coluna
(VENDA). O banco de dados faz os cálculos com base nas condições descritas em
CASE, ou seja, quando o preço de venda for menor que 10, será dado um desconto de
10%; se for maior ou igual a 10 e menor que 13, será dado 20% de desconto e se for
maior ou igual a 13, será dado 20% de desconto e se for maior ou igual a 13, será dado
um desconto de 30%.
UPDATE
update cd
case
preco_venda * .8
else
preco_venda * .7
end;
Nome_CD Preço_Venda
Mais do Mesmo 3,47
Bate-Boca 3,18
Elis Regina 3,81
CASE compacto
O exemplo a seguir é apenas didático, pois o correto seria unir as tabelas CD e
GRAVADORA, e mostra o nome do CD e o nome da gravadora.
select nome_cd,
end
Conclusão: Podemos trabalhar de várias maneiras com CASE, é muito prático para
criarmos triggers entre outras funções, até o próximo artigo.
Autor:Rubens Antunes