Tom Lane wrote:
Dennis Bjorklund <[EMAIL PROTECTED]> writes:

Do the sql standard say anything on the matter?


It doesn't seem very helpful.  AFAICS, we should interpret storing
'23:59:59.99' into a TIME(0) field as a cast from TIME(2) to TIME(0),
and the spec defines that as

        15) If TD is the datetime data type TIME WITHOUT TIME ZONE, then let
            TSP be the <time precision> of TD.

            b) If SD is TIME WITHOUT TIME ZONE, then TV is SV, with
              implementation-defined rounding or truncation if necessary.

So it's "implementation-defined" what we do.

IMHO Since 23:59:59.99 probably means "the last milliseconds of this day, as far as precision allows to express it", this should be truncated to 23:59:59, not rounded to 24:00:00. Until the last microsecond has elapsed, it's not 24 hours (you wouldn't round "happy new year" at 23:59:30 from a clock with minutes only either)

Regards,
Andreas



---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster

Reply via email to