I have found the following strangeness on Windows versions:
create table round_test (id int primary key, value double precision); insert into round_test(id, value) values(1, 1.5); insert into round_test(id, value) values(2, -1.5); insert into round_test(id, value) values(3, 3.5); select round(value) from round_test;
psql 8.2.13 returns
2 -2 4
But psql 8.3.3 returns
1 -1 3
Trying more values it seems that 8.2 rounding works according to banker's rounding rules. Can you confirm this? How can I avoid this incompatibility or perhaps bug?
Posting the output of 'select version()' from both the databases will help blaming some distribution.