Hola Laura, espero que estés bien
Parece que estás tratando de clasificar a los clientes según su año de nacimiento, pero hay un pequeño error en tu consulta que afecta la clasificación. La lógica en tu CASE
tiene un problema en el orden y las condiciones. Aquí te dejo una versión corregida de tu consulta:
SELECT NOMBRE, FECHA_DE_NACIMIENTO,
CASE
WHEN EXTRACT(YEAR FROM FECHA_DE_NACIMIENTO) < 1990 THEN 'VIEJO'
WHEN EXTRACT(YEAR FROM FECHA_DE_NACIMIENTO) >= 1990 AND EXTRACT(YEAR FROM FECHA_DE_NACIMIENTO) <= 1995 THEN 'JOVEN'
WHEN EXTRACT(YEAR FROM FECHA_DE_NACIMIENTO) > 1995 THEN 'NINO'
ELSE 'ANTIGUEDAD'
END AS ANIO
FROM TABLA_DE_CLIENTES;
En esta corrección, he ajustado las condiciones para que coincidan con lo que se pide en el ejercicio:
- "Viejos" para los nacidos antes de 1990.
- "Jóvenes" para los nacidos entre 1990 y 1995, inclusive.
- "Niños" para los nacidos después de 1995.
Espero que esto solucione el problema. ¡Espero haber ayudado y buenos estudios!