"Akio Iwaasa" <iwaasa@mxs.nes.nec.co.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