Tom Lane writes:
> It's correct, if the underlying float arithmetic is IEEE-compliant.
> Rounding for exact half-integral values is supposed to be "round to
> nearest even". So 42.5 goes to 42, but 43.5 goes to 44.
>
> I notice our NUMERIC rounding code does not do that ... perhaps it
> should.
More precisely, an IEEE-compliant system would offer the choice of
rounding up, rounding down, rounding toward zero, or rounding toward even.
I would guess that the default is merely the potentially best performing.
We could offer these options (much more easily) for the numeric case, but
since numeric is very often used for business type applications, the
customary rounding method (up) should be preferred.
--
Peter Eisentraut peter_e@gmx.net http://yi.org/peter-e/