Peter Eisentraut wrote:
> Am Donnerstag, 10. Januar 2008 schrieb Roberts, Jon:
> > > On PostgreSQL:
> > >
> > > select to_date('31-DEC-200700:00:00', 'dd-mon-yyyy hh24:mi:ss');
> > > to_date
> > > --------------
> > > 200700-12-31
>
> > Oracle removes all white spaces in the date you pass in and the date
> > format.
>
> I don't have a strong opinion on the whitespace handling, but then I wonder
>
> 1. If I put four YYYY, why does it create a six-digit year?
>
If we didn't print +4 digits for YYYY we would need new patterns for >4
digit years, like 5 and 6-digit years. Our documentation is at least
clear:
<entry><literal>YYYY</literal></entry> <entry>year (4 and more digits)</entry>
> 2. If it does create a six digit year, the rest of the pattern doesn't match
> anymore, so it should error.
>
> A further example shows that to_date seems to have little error checking
> altogether:
>
> select to_date('17.12.1978', 'YYYY-MM-DD');
> to_date
> ------------
> 0017-12-19
Yea, I can't find any way to suppress those leading zeros, except by
using the proper number of Y's.
-- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB
http://postgres.enterprisedb.com
+ If your life is a hard drive, Christ can be your backup. +