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
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 |