Subject Is this a bug in ROUND function?
Author

The following query shows that ROUND function does not give similar results for similar values:


select
    round(cast(0.725 as double precision), 2),
    round(cast(1.725 as double precision), 2),
    round(cast(2.725 as double precision), 2),
    round(cast(3.725 as double precision), 2),
    round(cast(4.725 as double precision), 2),
    round(cast(5.725 as double precision), 2),
    round(cast(6.725 as double precision), 2),
    round(cast(7.725 as double precision), 2),
    round(cast(8.725 as double precision), 2),
    round(cast(9.725 as double precision), 2),
    round(cast(10.725 as double precision), 2)
from
    rdb$database


All statements give result X.73, only 4.725 gives 4.72


I know that floating point values have their speciality, but still the function should work the same way for all values.

The query is run with IBExpert, but I don't think it's the problem in that case.


What do you think Should I report it as a bug?