Re: '1 year' = '360 days' ????

From: Jaime Casanova <systemguards(at)yahoo(dot)com>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: '1 year' = '360 days' ????
Date: 2004-10-22 17:25:01
Message-ID: 20041022172501.97443.qmail@web50009.mail.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Hola Ricardo,

> > SEGUNDA:
> > ---------------
> >
> > Cuando quiero comprobar cuánto tiempo ha pasado
> entre dos fechas, tengo
> dos
> > opciones (que dan resultados diferentes):
> >
> > SELECT '30-09-04'::timestamp -
> '30-09-03'::timestamp,
> > age('30-09-04'::timestamp, '30-09-03'::timestamp);
> >
> > ?column? | age
> > -------------------------------
> > @ 366 days | @ 1 year

Como tu mismo haces notar en este select para
postgresql un año no tiene a la fuerza 360 dias la
prueba es que la resta de las dos fechas da 366 y la
funcion age da 1 año (bisiesto).

> >
> > Los resultados son diferentes, porque si los
> comparamos:
> >
> > SELECT ('30-09-04'::timestamp -
> '30-09-03'::timestamp) =
> > age('30-09-04'::timestamp, '30-09-03'::timestamp);
> >
> >
> > ?column?
> > --------------
> > f
> >

engañas a postgresql, 1 year es variable no es tan
facil comparar contra 366 days.

> > TERCERA:
> > --------------
> >
> > Como comento en la segunda pregunta, cuando hago:
> >
> > SELECT '30-09-04'::timestamp -
> '30-09-03'::timestamp;
> >
> > el resultado es:
> >
> > ?column?
> > --------------
> > @ 366 days
> >
> > La pregunta es: ¿no existe alguna manera de
> "normalizar" el resultado, de
> > forma que dijera:
> >
> > @ 1 year 1 day
> >
> > Me parece que sería más correcto "@ 1 year 1 day"
> que "@ 366 days".

No, necesariamente. Recuerda que el 2004 es bisiesto y
por lo tanto han pasado 366 dias entre una y otra
fecha (1 año). No es correcto decir un año y un dia
por que es un año bisiesto.

> > ¿No hay alguna manera de conseguirlo?

Si lo que quieres hacer es forzar todos los años a 365
dias, debes hacer tu propia funcion.

Atentamente,
Jaime Casanova

_________________________________________________________
Do You Yahoo!?
Información de Estados Unidos y América Latina, en Yahoo! Noticias.
Visítanos en http://noticias.espanol.yahoo.com

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Ricardo Perez Lopez 2004-10-22 18:03:04 Re: '1 year' = '360 days' ????
Previous Message Manuel Sugawara 2004-10-22 16:24:06 Re: eliminar archivos log