Cláusula Case em consulta sql – MySQL

[ads2]
Olá a todos os Geeks, hoje o tema é Banco de Dados. O que vamos fazer é explicar como funciona a cláusula CASE em consultas SQL.
O exemplo que faremos pode ser usado em diversas situações, por exemplo quando você deseja mostrar só o mês de uma data e por extenso. Usaremos como exemplo a tabela a baixo.

Id Data Valor
1 10/02/2014 45,00
2 21/05/2014 120,90
3 16/01/2014 435,00
4 30/12/2013 300,00

Você pode usar os recursos da linguagem de programação que você usa para fazer isso, mas acredito que por SQL seja mais fácil e dependendo do tamanho da Query ajude no desempenho de sua aplicação. Usaremos também a função month() que retorna somente o mês de uma determinada data. Veja exemplo:

select id, case month(data)
when 1 then 'Janeiro'
when 2 then 'Fevereiro'
when 3 then 'Março'
when 4 then 'Abril'
when 5 then 'Maio'
when 6 then 'Junho'
when 7 then 'Julho'
when 8 then 'Agosto'
when 9 then 'Setembro'
when 10 then 'Outubro'
when 11 then 'Novembro'
when 12 then 'Dezembro'
end as mes, valor from tabela

Como você pode perceber a cláusula começa com case e termina com end, e depois usamos um alias para a coluna, que chamamos de mes, veja o resultado:

Id mes Valor
1 Fevereiro 45,00
2 Maio 120,90
3 Janeiro 435,00
4 Dezembro 300,00

É isso ai pessoal, até a próxima!
[ads1]

Jayr Alencar

Doutorando em Ciências da Computação no Centro de Informática da Universidade Federal do Pernambuco (CIn - UFPE); Mestre pela mesma instituição; Formado em Análise e Desenvolvimento de Sistemas; Católico; Fã de O Senhor do Anéis.

Você pode gostar...

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *