Re: Diferencia de fechas

From: Gunnar Wolf <gwolf(at)gwolf(dot)org>
To: Mario Guerrero <chimuelo22(at)yahoo(dot)es>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Diferencia de fechas
Date: 2005-12-13 04:59:03
Message-ID: 20051213045903.GG19471@gwolf.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Mario Guerrero dijo [Sat, Dec 10, 2005 at 05:14:51PM +0100]:
> Hola grupo, estoy trabajando con postgresql 8.1. Calculo la
> diferencia de fechas con: CURRENT_DATE - 'yyyy-mm-dd'. Con esto logro
> obtener los dias diferencia, pero como puedo hacer para obtener la
> diferencia de fechas en meses y años? Gracias de antemano.

Hola,

No creo que haya una manera directa - recuerda que 'meses' es una
medida bastante abstracta. Hay meses de 28, 29, 30 o 31 días. ¿de
cuáles quieres usar? :)

Esto es un poco sucio, pero podrías sumar el intervalo resultante a
una fecha iniciada en primero de enero, y ver la diferencia basándote
en ella - por ejemplo:

template1=# SELECT '01/01/2000'::date + (CURRENT_DATE - '2003-03-15'::Date);
?column?
------------
2002-09-30
(1 row)

Ya sobre de esto, puedes usar date_part:

template1=# SELECT date_part('year','2002-09-30'::date) - 2000 AS years, date_part('month', '2002-09-30'::date) AS months, date_part('day', '2002-09-30'::date) AS days;
years | months | days
-------+--------+------
2 | 9 | 30
(1 row)

Saludos,

--
Gunnar Wolf - gwolf(at)gwolf(dot)org - (+52-55)1451-2244 / 5623-0154
PGP key 1024D/8BB527AF 2001-10-23
Fingerprint: 0C79 D2D1 2C4E 9CE4 5973 F800 D80E F35A 8BB5 27AF

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Pablo Braulio 2005-12-13 08:48:21 Visualizar balances y qt-4.
Previous Message Gunnar Wolf 2005-12-13 04:52:46 Re: Sumar dias a una fecha