Problem with intervals

From: Bob Smith <bsmith(at)h-e(dot)com>
To: pgsql-sql <pgsql-sql(at)postgresql(dot)org>
Subject: Problem with intervals
Date: 2003-12-02 05:09:20
Message-ID: AFC6FD04-2485-11D8-A180-0003933DD370@h-e.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql


I'm getting an unexpected result using intervals in an expression:

select ('2003-10-26 0:00:00'::timestamp + '1 day'::interval)::date;
date
------------
2003-10-26
(1 row)

When I get rid of the date cast it becomes clear what is happening:

select '2003-10-26 0:00:00'::timestamp + '1 day'::interval;
?column?
------------------------
2003-10-26 23:00:00-08
(1 row)

I assumed '1 day' would always increment the date by 1, but it appears
that '1 day' just means '24 hours', and due to the daylight/standard
time shift, October 26 was 25 hours long this year.

Is this a Postgres bug, or is this correct SQL behavior? I'm running
Postgres 7.2.2.

Bob S.

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Tomasz Myrta 2003-12-02 06:07:42 Re: Concatenating multiple fetches into a single string
Previous Message Kumar 2003-12-02 04:51:14 Re: Concatenating multiple fetches into a single string