From: | John R Pierce <pierce(at)hogranch(dot)com> |
---|---|
To: | Konstantin Izmailov <pgfizm(at)gmail(dot)com> |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: "money" binary representation |
Date: | 2009-11-16 04:38:55 |
Message-ID: | 4B00D75F.3020902@hogranch.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Konstantin Izmailov wrote:
> I'm trying to read "money" field using PQgetvalue (PostgreSQL 8.3.7).
> The function returns 9 bytes, smth like 0h 0h 0h 0h 0h 0h 14h 0h 0h,
> for the value '$50.2'. I could not find description anywhere on how to
> convert the binary data into, for example, a double precision number.
>
> Would you please help me find a method of converting binary "money"
> data into a double precision?
>
Its my understanding that MONEY is deprecated that you really should
store money values as NUMERIC instead.
a wild guess says thats some variant on NUMERIC, which is stored in
base 10000 as a series of 16 bit integers, with a fuixed point fraction.
why would you convert money to floating point? $0.10 in binary floating
point is a repeating fraction which can't be represented exactly
btw, are you sure your value isn't $51.20 ? 0x1400 is 5120 decimal.
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2009-11-16 05:10:37 | Re: "money" binary representation |
Previous Message | Konstantin Izmailov | 2009-11-16 04:07:34 | "money" binary representation |