From: | Luis Sousa <llsousa(at)ualg(dot)pt> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Theodore Petrosky <tedpet5(at)yahoo(dot)com>, pgsql-sql(at)postgresql(dot)org |
Subject: | Re: Problem in age on a dates interval |
Date: | 2004-07-19 09:00:50 |
Message-ID: | 40FB8DC2.1080405@ualg.pt |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
I worked around this problem returning the difference between the two
dates, using extract doy from both.
Anyway, this will cause a bug on my code when changing the year. Any ideas?
Best regards,
Luis Sousa
Tom Lane wrote:
>Theodore Petrosky <tedpet5(at)yahoo(dot)com> writes:
>
>
>>wow.... at first I thought I had my head around a leap
>>year problem so I advanced your query a year....
>>
>>
>
>I think what's going on here is a difference of interpretation about
>whether an "M months D days" interval means to add the months first
>or the days first. For instance
>
>2005-02-18 plus 2 months = 2005-04-18, plus 24 days = 2005-05-12
>
>2005-02-18 plus 24 days = 2005-03-14, plus 2 months = 2005-05-14
>
>The timestamp-plus-interval operator is evidently doing addition the
>first way, but it looks like age() is calculating the difference in a
>way that implicitly corresponds to the second way.
>
>I have some vague recollection that this has come up before, but
>I don't recall whether we concluded that age() needs to be changed
>or not. In any case it's not risen to the top of anyone's to-do list,
>because I see that age() still acts this way in CVS tip.
>
> regards, tom lane
>
>
>
>
From | Date | Subject | |
---|---|---|---|
Next Message | Michael Stephenson | 2004-07-19 10:25:49 | Re: [ADMIN] Migrate postgres databases from SQL_ASCII to UNICODE |
Previous Message | SZUCS Gabor | 2004-07-19 08:47:40 | Re: How do I convice postgres to use an index? |