Re: Rounding strategy

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Laurenz Albe <laurenz.albe@cybertec.at>
Cc: rudolphfroger@dreamsolution.nl, pgsql-docs@lists.postgresql.org
Date: 2021-04-22T17:50:20Z
Lists: pgsql-docs
Laurenz Albe <laurenz.albe@cybertec.at> writes:
> On Mon, 2021-04-19 at 08:00 +0000, PG Doc comments form wrote:
>> The 'round' mathematical function documentation doesn't specify its rounding
>> strategy. If this would be documented then users can rely on its rounding
>> behavior. For double precision the rounding probably depends on your
>> platform. For numeric the function seems to round to nearest with ties going
>> away from zero (sometimes referred to as "round half up). 6.5 -> 7.0 and
>> -6.5 -> -7.0.

> Here is a proposed patch.

LGTM, although I think we can be a bit more specific about the float
case.  I suggest

        ... by rounding away from 0.  For <type>double precision</type>,
        the tie-breaking behavior is platform dependent, but
        <quote>round to nearest even</quote> is the most common rule.

			regards, tom lane



Commits

  1. Doc: document the tie-breaking behavior of the round() function.