ROUND() without bias by "properly" handling xxx.5 case (round to nearest even 
number)
-------------------------------------------------------------------------------------

                 Key: CORE-5349
                 URL: http://tracker.firebirdsql.org/browse/CORE-5349
             Project: Firebird Core
          Issue Type: Improvement
          Components: ISQL
         Environment: All
            Reporter: Sergio Hernandez
            Priority: Minor


Rounding always up (or based on sign) is statically biased, as the average of a 
list of numbers will allways tend to increase after you round them.

You are NOT allowed to use this "always up" method it in the S.I. 
(International System of Units, refer to section B7.1, read it here: 
http://www.hcsoft.net/lab/comohacer/redondeos/SI.png), nor the ASTM standards 
in USA (stated on the D29 standard, a spanish explanation is here: 
http://www.astm.org/SNEWS/SPANISH/SPSO08/datapoints_spso08.html) or in any ISO 
or UNE standard, as they all refer to the S.I. for rounding.

So, in lots of technical environments, actual rounding schema is not usable.

In maths and the alike, included most SQL engines 
(http://www.w3schools.com/sql/sql_func_round.asp) you always use the "even 
rule" (ANSI/IEEE Std 754-1985 standard for floating point artihmetic): in case 
of ending in 0.5, always round to the nearest EVEN number. 13.5 would round to 
14 and -13.5 will round to -14 too.

Will it be possible to have a flag -or an optional third parameter- so the 
round() funtion uses the nicer "even rounding rule, IEEE 754 standard" instead 
of actual "positives up, negatives down"?

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://tracker.firebirdsql.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

------------------------------------------------------------------------------
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to