I wrote:
> ... Consider
> -1 1:00:00 flips the sign
> - 1 1:00:00 doesn't flip the sign
> -1 day 1:00:00 doesn't flip the sign
> -2008-10 1:00:00 flips the sign
> -2008-10 1 doesn't flip the sign
> -2008 years 1:00:00 doesn't flip the sign
> If the rule were that it never flipped the sign for non-SQL-spec input
> then I think that'd be okay, but case 4 here puts the lie to that.
> I'm also not entirely sure if case 2 is allowed by SQL spec or not,
> but if it is then we've got a problem with that; and even if it isn't
> it's awfully hard to explain why it's treated differently from case 1.
Actually case 2 is a red herring --- I now see that ParseDateTime()
collapses out the whitespace and makes it just like case 1. So never
mind that. Case 4 is still bogus though.
regards, tom lane