Re: interval question - Mailing list pgsql-general

From dev@archonet.com
Subject Re: interval question
Date
Msg-id 20010306.12071200@client.archonet.com
Whole thread Raw
In response to interval question  ("Fernando P. Schapachnik" <fernando@schapachnik.com.ar>)
Responses Re: interval question  ("Fernando P. Schapachnik" <fernando@schapachnik.com.ar>)
List pgsql-general
On 3/6/01, 12:59:40 AM, Fernando "P." Schapachnik
<fernando@schapachnik.com.ar> wrote regarding [GENERAL] interval question:

> Hello:
>       Maybe somebody on the list can give me a hand with this. I
> have:
> id serial,
> start time,
> duration time

Surely "duration" should be of type interval.
Also - are you sure "start" should be time and not timestamp - depends if
you don't care about dates.

>       (That is, ids have an start time and a duration).

>       I want to know which ids are current, ie, which satisfy
> start<=now<=start+duration.

SELECT id FROM foo WHERE start<=now() AND now<=(start + duration);

>       The problem is that start+duration is an interval, and I
> can't find the way to cast now to interval or interval to time or
> tinterval in order to make the comparison.

The cast should happen automatically. If not, you can do things like:

select now() + '10:00'::interval;
select '2001-03-13'::timestamp;

to convert into interval or a timestamp.

pgsql-general by date:

Previous
From: dev@archonet.com
Date:
Subject: Re: List of all system tables.
Next
From: "Fernando P. Schapachnik"
Date:
Subject: Re: Re: interval question