Re: BUG #5484: sum() bug

From: "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
To: "viras" <viras(at)yandex(dot)ru>
Cc: "Robert Haas" <robertmhaas(at)gmail(dot)com>,<pgsql-bugs(at)postgresql(dot)org>
Subject: Re: BUG #5484: sum() bug
Date: 2010-06-01 15:19:07
Message-ID: 4C04DE9B0200002500031C5F@gw.wicourts.gov
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
> On Tue, Jun 1, 2010 at 9:24 AM, viras <viras(at)yandex(dot)ru> wrote:

>> What type of the data is better for using? Numbers up to 100000
>> and accuracy of 2 fractional signs.
>
> numeric is a good choice to avoid loss of precision, but can be a
> bit slower.
>
> You could also try float8.

Yeah, as long as you remember that this is an *approximate* data
type. If you really mean that you're satisfied with an *accuracy*
of two fractional digits for a number up to 100000, you are OK. But
realize that means that 1.01 would actually be
1.0100000000000000088817841970012523233890533447265625 and that
100000.01 would actually be
100000.009999999994761310517787933349609375 -- accurate to far more
than two decimal digits, but not *exact*.

If you want exact values based on decimal fractions, you should use
numeric.

-Kevin

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message viras 2010-06-02 05:13:37 Re: BUG #5484: sum() bug
Previous Message Bruce Momjian 2010-06-01 14:40:45 Re: BUG #5469: regexp_matches() has poor behaviour and more poor documentation