Referencia de funciones

AGE

Equivalente en MySQL:

Devuelve la diferencia entre dos momentos en años, meses y días.

PostgreSQL 17.9
AGE([timestamp1, ]timestamp2)
  • [ ]parte opcional
timestamp1
Momento posterior, por defecto la fecha actual (CURRENT_DATE)
timestampOpcional
timestamp2
Momento anterior, el que se resta
timestamp

Valor devuelto

Intervalo (interval) en años, meses y días; negativo si timestamp1 es anterior a timestamp2

Ejemplos

Diferencia entre dos fechas

PostgreSQL 17.9
SELECT AGE('2022-12-05', '2012-06-12');
age
10 years 5 mons 23 days

Edad actual de los miembros de la familia

PostgreSQL 17.9
SELECT member_name,
	AGE(birthday) AS age
FROM FamilyMembers;

Detalles

Con un argumento, la edad se calcula desde la medianoche de la fecha actual. Los años cumplidos se obtienen con EXTRACT(YEAR FROM AGE(birthday)).

La resta simple timestamp - timestamp también da un intervalo, pero en días y horas, sin meses ni años: 67 days 10:00:00 en lugar de 2 mons 7 days 10:00:00.

Véase también

Dónde aprenderlo