Descripción : ¿Cómo calculo la edad desde un campo fecha en Firebird?
Respuesta:
Asumiendo que la tabla1 contiene un campo tipo fecha con la información de la fecha de nacimiento ...
SELECT EXTRACT(YEAR FROM current_date) - EXTRACT(YEAR FROM campo_fecha)
- CASE WHEN EXTRACT(MONTH FROM current_date) > EXTRACT(MONTH FROM campo_fecha)
THEN 0
ELSE
CASE WHEN EXTRACT(MONTH FROM current_date)
< EXTRACT(MONTH FROM campo_fecha)
THEN 1
ELSE
CASE WHEN EXTRACT(DAY FROM current_date)
< EXTRACT(DAY FROM campo_fecha)
THEN 1
ELSE 0
END
END
END as edad
FROM tabla1
o más sencillo
SELECT CAST((CURRENT_DATE-campo_fecha)/365.25 AS INTEGER) FROM tabla1
Nota : Este script no calcula la edad con meses ni en meses