From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | "Akio Iwaasa" <iwaasa(at)mxs(dot)nes(dot)nec(dot)co(dot)jp> |
Cc: | pgsql-bugs(at)postgresql(dot)org |
Subject: | Re: BUG #2885: to_char function |
Date: | 2007-01-12 15:46:38 |
Message-ID: | 7266.1168616798@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
"Akio Iwaasa" <iwaasa(at)mxs(dot)nes(dot)nec(dot)co(dot)jp> writes:
> When I've used "to_char" function to convert "Date" to
> "century" format text, '2000-01-01' was converted in
> the 21st century.
> postgres=# select to_char('2000-01-01'::date, 'CC') ;
> to_char
> ---------
> 21
> (1 row)
I'm not entirely sure that this is wrong, because of the behavior of
the Y and YY fields.
regression=# select to_char('2007-01-01'::date, 'CC YY') ;
to_char
---------
21 07
(1 row)
regression=# select to_date('21 07', 'CC YY');
to_date
------------
2007-01-01
(1 row)
regression=# select to_char('2000-01-01'::date, 'CC YY') ;
to_char
---------
21 00
(1 row)
regression=# select to_date('21 00', 'CC YY');
to_date
------------
2000-01-01
(1 row)
If we make CC treat 2000 as being in the 20th century, what should YY
do?
Perhaps more to the point, how do these things act in Oracle?
to_char is basically an Oracle-compatibility function so we should
adopt their bugs :-(
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Jorge Godoy | 2007-01-12 15:53:04 | Re: BUG #2885: to_char function |
Previous Message | Zubkovsky, Sergey | 2007-01-12 14:48:48 | PG unexpected crash |