Andrew Chernow <ac@xxxxxxxxx> writes: > Looks like a difference in calendars: I think the docs give the starting > date in Julian proleptic Calendar while to_char returns Gregorian > proleptic Calendar. Yeah. We're definitely using Gregorian counting, because we're omitting leap years at multiples of 400 years: regression=# select 'J114417'::date; date --------------- 4400-02-28 BC (1 row) regression=# select 'J114418'::date; date --------------- 4400-03-01 BC (1 row) So as far as that goes, I'm inclined to leave the code alone and adjust the docs. The regular date input routine hasn't got a problem with J0: regression=# select 'J1'::date; date --------------- 4714-11-25 BC (1 row) regression=# select 'J0'::date; date --------------- 4714-11-24 BC (1 row) so to_date's behavior in the case seems a bit broken, but I'm not sure if it's worth fixing. IIRC that code uses zero to mean "field not entered", so it'd need some ugly hack to handle this. regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 3: Have you checked our extensive FAQ? http://www.postgresql.org/docs/faq