Re: Significant Digits in Floating Point Datatype - Mailing list pgsql-general

From Bill Moran
Subject Re: Significant Digits in Floating Point Datatype
Date
Msg-id 4EC95B51.40908@potentialtech.com
Whole thread Raw
In response to Significant Digits in Floating Point Datatype  (Lee Hachadoorian <lee.hachadoorian@gmail.com>)
List pgsql-general
On 11/20/11 1:29:37 PM, Lee Hachadoorian wrote:
> I would like to store some in a single array some data that is
> conceptually related, but some of the data is floating point, and some
> of it is integer. Obviously the integer data *can* be stored as double
> precision, but I need to know about potential loss of precision. Double
> precision has "a precision of at least 15 digits." I would assume that
> that would mean that for double precision, 15 digits of data would be
> faithfully preserved. But I found a question on the list where a value
> stored as 955.60 sometimes returns as 955.599999999998.
> (http://archives.postgresql.org/pgsql-general/2011-08/msg00144.php) If
> this is the case, what does "a precision of at least [x] digits"
> actually mean? And can I reliably retrieve the original integer by
> casting to int (or bigint) if the number of digits in the original
> integer is less than 15?

Given Tom's answer, you may want to consider whether the DECIMAL
data type is a better fit for your needs.

--
Bill Moran

pgsql-general by date:

Previous
From: Adrian Klaver
Date:
Subject: Re: Table Design question for gurus (without going to "NoSQL")...
Next
From: Adrian Klaver
Date:
Subject: Re: Installed. Now what?