Harry E. Clarke wrote:
> 
> The following bug has been logged online:
> 
> Bug reference:      2403
> Logged by:          Harry E. Clarke
> Email address:      [EMAIL PROTECTED]
> 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. +

---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster

Reply via email to