From: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> |
---|---|
To: | Guillermo Villanueva <guillermovil(at)gmail(dot)com> |
Cc: | pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: lógica de la resta de fechas |
Date: | 2011-03-31 18:53:32 |
Message-ID: | 1301592732-sup-1055@alvh.no-ip.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Excerpts from Guillermo Villanueva's message of jue mar 31 12:36:09 -0300 2011:
> Buenas, cómo están, estoy tratando de analizar la lógica de la resta entre
> dos timestamp,
> según la documentación, dice que el resultado es un interval
> -timestamp '2001-09-29 03:00' - timestamp '2001-09-27 12:00'interval '1 day
> 15:00:00'Mi pregunta es, por que al restar:
> *2011-01-01 00:00:00 -* *2004-12-05 00:00:00 *me dá como resultado *2218
> days*? ¿No debería darme en años, meses, días, etc? En todo caso, como hago
> para asegurarme que siempre de días y a ese valor convertirlo a integer?
Creo que por razones históricas, la sustracción de timestamp aplica un
justify_hours() al resultado, que (creo) explicaría lo que estás viendo.
Quizás quieras aplicar justify_interval().
(Contexto: un interval está representado internamente en meses, días, y
segundos).
--
Álvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
From | Date | Subject | |
---|---|---|---|
Next Message | Jose Antonio Garcia Torres | 2011-03-31 19:21:01 | PITR para 8.1 |
Previous Message | Guillermo Villanueva | 2011-03-31 15:56:54 | Re: [pgsql-es-ayuda] lógica de la resta de fechas |