Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Como trazer apenas o resultado "Jovem"

Como eu faria para trazer apenas os Jovens dessa consulta?

Tentei com Where mas aparentemente ele não entende Classificacao como uma coluna.

Tentei com Group by e Having mas ele retorna sem valores.

SELECT NOME, DATA_DE_NASCIMENTO, CASE WHEN YEAR(DATA_DE_NASCIMENTO) > 1990 THEN 'VELHO' WHEN YEAR(DATA_DE_NASCIMENTO) >= 1990 AND YEAR(DATA_DE_NASCIMENTO) <= 1995 THEN 'JOVEN' ELSE 'CRIANÇA' END AS CLASSIFICACAO FROM tabela_de_clientes;

1 resposta

Você teria que colocar a condição do "CASE" referente ao "Jovem" no "WHERE". Eu fiz algumas alterações na sua consulta, segue um exemplo:


SELECT NOME, DATA_DE_NASCIMENTO, 
CASE 
WHEN YEAR(DATA_DE_NASCIMENTO) > 1995 THEN 'CRIANÇA' 
WHEN YEAR(DATA_DE_NASCIMENTO) BETWEEN 1990 AND 1995 THEN 'JOVEM' 
ELSE 'VELHO' END AS CLASSIFICACAO FROM 
tabela_de_clientes where  YEAR(DATA_DE_NASCIMENTO) BETWEEN 1990 AND 1995