From: | Bill Moran <wmoran(at)potentialtech(dot)com> |
---|---|
To: | Lee Hachadoorian <lee(dot)hachadoorian(at)gmail(dot)com> |
Cc: | "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: Significant Digits in Floating Point Datatype |
Date: | 2011-11-20 19:56:01 |
Message-ID: | 4EC95B51.40908@potentialtech.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | 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
From | Date | Subject | |
---|---|---|---|
Next Message | Adrian Klaver | 2011-11-20 20:13:29 | Re: Installed. Now what? |
Previous Message | Adrian Klaver | 2011-11-20 19:49:43 | Re: Table Design question for gurus (without going to "NoSQL")... |