From: | Bruce Momjian <bruce(at)momjian(dot)us> |
---|---|
To: | "Martin A(dot) Brooks" <martin(at)antibodyMX(dot)net> |
Cc: | pgsql-bugs(at)postgresql(dot)org |
Subject: | Re: BUG #6028: age() function output contracts "months", but not any other units. |
Date: | 2011-05-18 19:40:44 |
Message-ID: | 201105181940.p4IJeiu23136@momjian.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
Martin A. Brooks wrote:
>
> The following bug has been logged online:
>
> Bug reference: 6028
> Logged by: Martin A. Brooks
> Email address: martin(at)antibodyMX(dot)net
> PostgreSQL version: 9.0.4
> Operating system: Debian/GNU Linux 6
> Description: age() function output contracts "months", but not any
> other units.
> Details:
>
> Hi
>
> postgres=# select age(now(),'1973-12-20'::timestamp);
> age
> -----------------------------------------
> 37 years 4 mons 28 days 15:33:49.041831
> (1 row)
>
>
> Note "mons" and not "months". And if "mons", why not "yrs" and "dys"?
I was hoping someone else knew a good answer to this question, but now
that no one replied --- I have no idea on it was done this way. I think
this code came from Berkeley. My guess is that the spelling was based
on the libc struct tm field names:
int tm_mday; /* day of month (1 - 31) */
int tm_mon; /* month of year (0 - 11) */
int tm_year; /* year - 1900 */
The only clear answer I can think of is that "month" has five letters,
and "year" and "day" have less then five letters. :-|
Does anyone feel this is worth changing? I am concerned such a change
would break many user applications.
--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com
+ It's impossible for everything to be true. +
From | Date | Subject | |
---|---|---|---|
Next Message | Silvio Brandani | 2011-05-19 07:34:44 | Re: Postgres Server Odbc driver compatibility matrix |
Previous Message | Hiroshi Inoue | 2011-05-18 18:34:48 | Re: Postgres Server Odbc driver compatibility matrix |