Re: Bug in to_timestamp()
От | Karel Zak |
---|---|
Тема | Re: Bug in to_timestamp() |
Дата | |
Msg-id | Pine.LNX.3.96.1000817122143.31414E-100000@ara.zf.jcu.cz обсуждение исходный текст |
Ответ на | Bug in to_timestamp() ("Gqms2 Galway" <gqms2@nortelnetworks.com>) |
Список | pgsql-bugs |
On Wed, 16 Aug 2000, Gqms2 Galway wrote: > > Please enter a FULL description of your problem: > ------------------------------------------------ > The to_timestamp function is not working as per the documentation. See the > examples below. > No. It is not bug. Where is in a documentation your example? Instead this, in the documentation is next: YYYY = year (4 or more digits) ^^^^^^^^^^^ Timestamp range is 4714 BC -- 1465001 AC. > select to_timestamp('20000816000001', 'YYYYMMDDHH24MISS') returns > '30/12/1899' (wrong) The PostgreSQL hasn't directly limited year. The to_timestamp() stop parse YYYY at first non-digit char. > select to_timestamp('2000 0816000001', 'YYYY MMDDHH24MISS') returns > '16/08/2000 00:00:01' (ok) Yes, it's right. If you want store full timestamp into one big number is better year keep to end of this number, like: test=# select to_timestamp('08160000012000', 'MMDDHH24MISSYYYY'); to_timestamp ------------------------2000-08-16 00:00:01+02 And YYY, YY, Y ... it's *hell*, and we support it because Oracle has it too. How number you want create from:'01' -- 'YY' ---> 2001, 1901 or 0001 .. grrrr to_timestamp() use last possibility. Some commets/suggestions about greater years than 9999 in to_timestamp() / to_date()? Thanks, Karel
В списке pgsql-bugs по дате отправления: