Re: Rounding problems
| От | Tom Lane |
|---|---|
| Тема | Re: Rounding problems |
| Дата | |
| Msg-id | 11625.1241362365@sss.pgh.pa.us обсуждение исходный текст |
| Ответ на | Rounding problems ("Paolo Saudin" <paolo@ecometer.it>) |
| Ответы |
R: Rounding problems
|
| Список | pgsql-general |
"Paolo Saudin" <paolo@ecometer.it> writes:
> I have a problem with a query wich simple aggregate values. In the sample
> below I have two values, 1.3 and 1.4. Rounding their average with one
> decimals, should give 1.4.
You seem way overoptimistic about float4 values being exact. They are
not. The actual computation being done here is more like
regression=# select (1.3::real + 1.4::real) / 2 ;
?column?
------------------
1.34999990463257
(1 row)
If you want an exact sum with no roundoff error you should be storing
all your values as numeric (and taking the consequent speed and space
hit :-().
regards, tom lane
В списке pgsql-general по дате отправления: