CASE

Escolha um valor por linha, dependendo de condições. Funciona como SE e SES no Excel.

Sintaxe

CASE WHEN condition THEN value [WHEN … THEN …] ELSE value END
  • O primeiro WHEN verdadeiro vence. ELSE é opcional; sem ele, o resultado é NULL.

Exemplo

SELECT name, CASE WHEN unit_price < 3.00 THEN 'budget' ELSE 'standard' END AS band FROM products;

Cada produto com 'budget' ou 'standard' como faixa.

Tabelas usadas: products. Experimente em uma lição abaixo.

Erros comuns

  • Coloque a condição mais específica primeiro. O primeiro WHEN verdadeiro é o que é usado.
  • Sem ELSE, linhas que não correspondem a nenhum WHEN dão NULL, e COUNT não conta NULL.

Pratique