Re: Postgresql problem with update double precision

From: Condor <condor(at)stz-bg(dot)com>
To: <pgsql-general(at)postgresql(dot)org>
Subject: Re: Postgresql problem with update double precision
Date: 2011-08-05 11:59:23
Message-ID: 810366541da60569f5d8fd70beffcece@stz-bg.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Fri, 05 Aug 2011 07:20:01 -0400, Jerry Sievers wrote:
> Condor <condor(at)stz-bg(dot)com> writes:
>
>> Hello ppl,
>> for few years I have problem when update double precision field. I
>> have table and few double precision columns, here is example:
>>
>> sumall double precision,
>> sumin double precision,
>>
>> My php script do:
>>
>> $get = 2.40
>>
>> and sql code is:
>>
>> UPDATE table1 SET sumall = sumall + $get WHERE id = 1 AND rd =
>> CURRENT_DATE;
>>
>>
>> When I browse the table some times i see incorrect values like:
>>
>> 955.599999999998
>>
>> it's should be 955.60 after these updates ... some days is fine,
>> some
>> days the value is incorrect.
>>
>> I have this problem from version 7 of postgresql, Im now use 9.0.3
>>
>> Anyone know what can be the problem and why some times records is
>> fine, some times isnt ?
>
> That floating point data types are inexact is a well known problem
> with them and not Postgres specific.
>
> Consider switching those fields to type NUMERIC.
>
> HTH
>>
>
> --
> Jerry Sievers
> Postgres DBA/Development Consulting
> e: postgres(dot)consulting(at)comcast(dot)net
> p: 305.321.1144

Thank you, today I see all 3 rows is normal, but when I do select
sum(sumall) I got 73.3000000001 as result.
Any way how I can convert field in numeric without to lose data ?

--
Regards,
Condor

In response to

Browse pgsql-general by date

  From Date Subject
Next Message JJ 2011-08-05 12:35:37 Temp table visibility
Previous Message Jerry Sievers 2011-08-05 11:33:47 Re: Select count with offset returns nothing.