Re: BUG #2403: Date arithemtic using INTERVAL in UPDATE command - Mailing list pgsql-bugs

From Bruce Momjian
Subject Re: BUG #2403: Date arithemtic using INTERVAL in UPDATE command
Date
Msg-id 200604241815.k3OIFrb21461@candle.pha.pa.us
Whole thread Raw
In response to BUG #2403: Date arithemtic using INTERVAL in UPDATE command does not work  ("Harry E. Clarke" <Harry.Clarke@metrosky.co.uk>)
Responses Re: BUG #2403: Date arithemtic using INTERVAL in UPDATE command  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-bugs
Harry E. Clarke wrote:
>
> The following bug has been logged online:
>
> Bug reference:      2403
> Logged by:          Harry E. Clarke
> Email address:      Harry.Clarke@metrosky.co.uk
> PostgreSQL version: 8.1.3
> Operating system:   Suse Linux 10.0
> Description:        Date arithemtic using INTERVAL in UPDATE command does
> not work
> Details:
>
> Entering the command
>
> UPDATE table SET col_date = col_date - INTERVAL '100' YEAR where condition;
>
> does not perform any date aritimetic, and thus the date value in col_date
> remains unchanged. col_date contains a value such as '2039-12-07'. If the
> command
>
> UPDATE table SET col_date = DATE '1939-12-07' where condition;
>
> is entered, the command executes as expected.

That is definately a bug:

    test=> SELECT INTERVAL '100' YEAR;
     interval
    ----------
     00:00:00
    (1 row)

As a work-around until we fix it, please use:

    test=> SELECT INTERVAL '100 year';
     interval
    -----------
     100 years
    (1 row)

with the 'YEAR' in the quotes.

--
  Bruce Momjian   http://candle.pha.pa.us
  EnterpriseDB    http://www.enterprisedb.com

  + If your life is a hard drive, Christ can be your backup. +

pgsql-bugs by date:

Previous
From: "Harry E. Clarke"
Date:
Subject: BUG #2403: Date arithemtic using INTERVAL in UPDATE command does not work
Next
From: Bruno Wolff III
Date:
Subject: Re: BUG #2403: Date arithemtic using INTERVAL in UPDATE command does not work