Re: [SQL] Interval subtracting

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: "Milen A(dot) Radev" <milen(at)radev(dot)net>
Cc: pgsql-sql(at)postgresql(dot)org, pgsql-hackers(at)postgresql(dot)org
Subject: Re: [SQL] Interval subtracting
Date: 2006-02-18 18:30:14
Message-ID: 20402.1140287414@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-patches pgsql-sql

"Milen A. Radev" <milen(at)radev(dot)net> writes:
> Milorad Poluga :
>>> SELECT '10 years 1 mons 1 days'::interval - '9 years 10 mons 15 days'::interval
>>> ?column?
>>> ---------------
>>> 3 mons -14 days
>>>
>>> Why not '2 mons 16 days' ?

> Please read the last paragraph in section 8.5.1.4 of the manual
> (http://www.postgresql.org/docs/8.1/static/datatype-datetime.html#AEN4775)
> . It mentions the functions named "justify_days" and "justify_hours"
> that could do what you need.

justify_days doesn't currently do anything with this result --- it
thinks its charter is only to reduce day components that are >= 30 days.
However, I think a good case could be made that it should normalize
negative days too; that is, the invariant on its result should be
0 <= days < 30, not merely days < 30. Similarly for justify_hours.
Comments anyone? Patch anyone?

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2006-02-18 18:32:16 Re: Adding an ignore list to pg_restore
Previous Message Tom Lane 2006-02-18 18:08:10 Re: Updated email signature

Browse pgsql-patches by date

  From Date Subject
Next Message Stephan Szabo 2006-02-18 19:03:39 Re: [SQL] Interval subtracting
Previous Message Peter Eisentraut 2006-02-18 18:08:15 Re: Uninstall scripts for contrib

Browse pgsql-sql by date

  From Date Subject
Next Message Stephan Szabo 2006-02-18 19:03:39 Re: [SQL] Interval subtracting
Previous Message ogjunk-pgjedan 2006-02-18 17:41:58 Need help: Find dirty rows, Update, Delete SQL