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  ("Paolo Saudin" <paolo@ecometer.it>)
Список 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 по дате отправления:

Предыдущее
От: Justin
Дата:
Сообщение: Re: Rounding problems
Следующее
От: "Paolo Saudin"
Дата:
Сообщение: R: Rounding problems