From: Achilleas Mantzios <achill@matrix.gatewaynet.com>
To: pgsql-admin@postgresql.org
Cc: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Julius Tuskenis <julius@nsoft.lt>
Subject: Re: how to get a number of seconds in some interval ?
Date: Tue, 13 May 2008 09:56:50 +0300
Message-ID: <200805130956.51872.achill@matrix.gatewaynet.com> (raw)
In-Reply-To: <20080.1210604951@sss.pgh.pa.us>
References: <482849B0.6050103@nsoft.lt>
<200805121801.35101.achill@matrix.gatewaynet.com>
<20080.1210604951@sss.pgh.pa.us>
Στις Monday 12 May 2008 18:09:11 ο/η Tom Lane έγραψε:
> Achilleas Mantzios <achill@matrix.gatewaynet.com> writes:
> > Στις Monday 12 May 2008 17:32:39 ο/η Julius Tuskenis έγραψε:
> >> do you know why division of intervals was not implemented? As I see it -
> >> there should be an easy way to do so. '1 hour 30 minutes' / '1 hour' =
> >> 1.5 .... Seems straight forward...
> >>
> > No idea why. However as you pose it,it makes sense.
>
> No, it doesn't really, because intervals contain multiple components.
> What would you define as the result of
> '1 month 1 hour' / '1 day'
> bearing in mind that the number of days per month is not fixed, and
> neither is the number of hours per day?
>
SELECT extract(epoch from '1 month'::interval)/(60*60*24) as "Days in 1 month interval";
Days in 1 month interval
--------------------------
30
(1 row)
So it seems that the arbitary assumption of (1 month=30 days, and 1 day = 24 hours) has already been made
in the extract function.
> You can derive a number if you're willing to make arbitrary assumptions
> about the relationships of the different units (as indeed extract(epoch)
> does), but hard-wiring such assumptions into a basic arithmetic operator
> doesn't seem like a good idea to me.
>
> regards, tom lane
>
--
Achilleas Mantzios
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-admin@postgresql.org
Cc: achill@matrix.gatewaynet.com, tgl@sss.pgh.pa.us, julius@nsoft.lt
Subject: Re: how to get a number of seconds in some interval ?
In-Reply-To: <200805130956.51872.achill@matrix.gatewaynet.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox