4 Exemplos Práticos de Como Usar CASE WHEN no SQL e Melhorar suas Consultas

Descubra como usar o CASE WHEN no SQL para criar condições inteligentes e tornar suas consultas mais dinâmicas e eficientes. Aprenda com exemplos práticos!

Se você deseja tornar suas consultas SQL mais flexíveis e adaptáveis, o CASE WHEN no SQL é a ferramenta ideal. Com essa expressão condicional, é possível definir regras personalizadas dentro de SELECT, UPDATE, GROUP BY e muito mais. Se você precisa categorizar dados, criar classificações ou tomar decisões dinâmicas diretamente no banco, o CASE WHEN será seu grande aliado.

Neste artigo, vou te mostrar como usar CASE WHEN no SQL, com exemplos práticos para facilitar o aprendizado. Vamos nessa?

O que é o CASE WHEN no SQL?

O CASE WHEN é uma estrutura condicional que funciona como um IF dentro das consultas SQL. Ele permite definir regras para manipular os resultados retornados, tornando suas queries mais inteligentes.

A estrutura básica é assim:

SELECT coluna,
       CASE
           WHEN condição1 THEN resultado1
           WHEN condição2 THEN resultado2
           ELSE resultado_padrao
       END AS nome_da_nova_coluna
FROM tabela;

Agora, vamos ver isso na prática!

Exemplo 1: Classificando Idades com CASE WHEN

Imagine que você tem uma tabela chamada clientes e deseja classificar os clientes em Jovem, Adulto ou Sênior, com base na idade. Veja como usar CASE WHEN no SQL para isso:

SELECT nome, idade,
       CASE
           WHEN idade < 18 THEN 'Jovem'
           WHEN idade BETWEEN 18 AND 59 THEN 'Adulto'
           ELSE 'Sênior'
       END AS faixa_etaria
FROM clientes;

Isso retornará uma nova coluna chamada faixa_etaria, categorizando os clientes de forma automática.

Exemplo 2: Criando Descontos com CASE WHEN

Agora, suponha que você tem uma tabela pedidos e deseja aplicar um desconto com base no valor da compra:

SELECT cliente, valor_pedido,
       CASE
           WHEN valor_pedido >= 500 THEN '10% de desconto'
           WHEN valor_pedido BETWEEN 200 AND 499 THEN '5% de desconto'
           ELSE 'Sem desconto'
       END AS desconto
FROM pedidos;

Com isso, cada cliente verá automaticamente o desconto correspondente ao seu pedido.

Exemplo 3: CASE WHEN no UPDATE

Além do SELECT, você pode usar CASE WHEN no SQL para atualizar dados. Suponha que você queira atualizar a coluna status dos pedidos com base no valor total:

UPDATE pedidos
SET status = CASE
                WHEN valor_pedido >= 500 THEN 'Aprovado'
                WHEN valor_pedido BETWEEN 200 AND 499 THEN 'Pendente'
                ELSE 'Rejeitado'
            END;

Essa instrução ajusta o status automaticamente conforme o valor do pedido.

Introdução à Linguagem SQL: Abordagem Prática Para Iniciantes

Quer entender como acessar e transformar dados de maneira relevante? Com este guia prático, você aprenderá a dominar os conceitos essenciais do SQL, criar bancos de dados eficientes e realizar consultas poderosas. Descubra como manipular dados com SELECT, WHERE, GROUP BY e muito mais.
👉 Garanta o seu aqui!

Exemplo 4: Contando Registros com CASE WHEN

Outra aplicação poderosa é contar registros que atendem a condições específicas. Suponha que você quer contar quantos clientes são jovens, adultos e seniores:

SELECT
    SUM(CASE WHEN idade < 18 THEN 1 ELSE 0 END) AS jovens,
    SUM(CASE WHEN idade BETWEEN 18 AND 59 THEN 1 ELSE 0 END) AS adultos,
    SUM(CASE WHEN idade >= 60 THEN 1 ELSE 0 END) AS seniores
FROM clientes;

Isso retorna três contadores distintos, sem precisar de múltiplas consultas.

Conclusão

O CASE WHEN no SQL é um verdadeiro coringa para criar consultas mais dinâmicas e inteligentes. Ele permite classificar dados, aplicar regras de negócio e até mesmo modificar registros com muita flexibilidade. Agora que você viu como essa função funciona na prática, que tal testar no seu banco de dados?

Se esse conteúdo te ajudou, compartilhe e deixe um comentário com sua dúvida ou experiência! Aproveite para conferir outros artigos relacionados abaixo!

Comentários

0 0 votos
Classificação do artigo
Inscrever-se
Notificar de
guest
0 Comentários
mais antigos
mais recentes Mais votado
Feedbacks embutidos
Ver todos os comentários

Outros Artigos e Tutoriais

Sobre o Autor

Desenvolvedor por formação, solucionador de problemas por profissão e apaixonado por compartilhar conhecimento.

Sigam-me os Bons!

Siga-me nas redes sociais e participe da nossa comunidade de aprendizado!

newsletter

Aprenda no seu ritmo. Inscreva-se e receba materiais que fazem diferença.

0
Adoraria saber sua opinião, comente.x

Obrigado por essa dose de cafeína para o blog! 🍵

Com um café, você ajuda a manter as ideias quentes, os códigos rodando e o conteúdo fresquinho no ar.