Re: Anomaly with SUM(). - Mailing list pgsql-general

From Tom Lane
Subject Re: Anomaly with SUM().
Date
Msg-id 29414.1060372255@sss.pgh.pa.us
Whole thread Raw
In response to Anomaly with SUM().  (Anthony Best <abest@digitalflex.net>)
Responses Re: Anomaly with SUM().  (Anthony Best <abest@digitalflex.net>)
List pgsql-general
Anthony Best <abest@digitalflex.net> writes:
> I've noticed that the SUM() seems to overflow under some situations.
> The only difference is the order that the data is retrived from the
> database.

> accounting=# select  sum(amount)  from transactions, chart WHERE
> account=chart.id;
>          sum
> ---------------------
> 5.6843418860808e-14
> (1 row)

> accounting=# select  sum(amount)  from transactions, chart WHERE
> account=chart.id AND amount=amount;
> sum
> -----
>    0
> (1 row)

That's not an overflow, it's merely roundoff error.  If this surprises
you, possibly you should be using type NUMERIC instead of float.

            regards, tom lane

pgsql-general by date:

Previous
From: Stephan Szabo
Date:
Subject: Re: Anomaly with SUM().
Next
From: Anthony Best
Date:
Subject: Re: Anomaly with SUM().