Calcular edad en PostgreSQL

Como calcular la edad de una determinada persona en PostgreSQL a partir de una determinada fecha.

Si necesitamos obtener la edad de una determinada persona y tenemos su fecha de nacimiento por ejemplo, podemos hacerlo de manera nativa en PostgreSQL con una sencilla función , en el caso de que tengamos la fecha en formato date o timestamp. Si no la tenemos podemos llamar a la función age, con el modificador timestamp seguido de la fecha en formato texto. Así tendríamos la fecha que tenemos en texto en formato fecha.

Pues bien, para conseguir nuestro objetivo, bastaría con llamar a la función AGE, que proporciona cálculo de edades. La llamada a la función se realiza de la siguiente manera:

select Age(<campo_que_contiene_la_fecha>) from <nombre_tabla>

El resultado que nos devuelve es la edad actual de la fecha determinada, desglosada en años, meses y días, por ejemplo el resultado obtenido se mostraría de la siguiente manera: 57 years 11 mons 28 days.

Otro ejemplo de la función AGE que nos puede servir para obtener información tan interesante como la siguiente:

Necesitamos obtener la edad que tenía el día 14-02-2015 una determinada persona nacida por ejemplo el 24-08-1980 .

Bastaría con hacer una consulta de tipo select  que incluyera la función AGE y que fuera de la siguiente forma:

Select age(timestamp ‘2015-02-14’,timestamp ‘1980-08-24’)

De esta manera convertimos una cadena en formato fecha utilizando el modificador timestamp y ejecutamos la función age para obtener la edad que tenía esta persona ese día, el resultado obtenido es que la persona que nació el 24 de agosto de 1980 , el día 14 de febrero de 2015 tenía 34 years 5 mons 21 days.

 

 

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.