A quick experiment shows that if either numerator or denominator are decimal, 
that is preserved in the end result. Probably true for basic math operations in 
general.

GW

-----Original Message-----
From: [EMAIL PROTECTED] on behalf of Gregory Williamson
Sent: Thu 11/29/2007 10:37 PM
To: Postgres User; pgsql-general
Subject: Re: [GENERAL] Simple math statement - problem
 
The question:
> 
> How can I write statements that returns a decimal?
> 
> 
billing=# select 1/100;
 ?column?
----------
        0
(1 row)

As you said ...

So make everything decimal:
billing=# select 1.0/100.0;
        ?column?
------------------------
 0.01000000000000000000

Or:
billing=# select 1::decimal/100::decimal;
        ?column?
------------------------
 0.01000000000000000000

I think that when you use integers you lose precision right out the gate. 
Others can provide better insight I hope ...

HTH,

Greg Williamson
Senior DBA
GlobeXplorer LLC, a DigitalGlobe company

Confidentiality Notice: This e-mail message, including any attachments, is for 
the sole use of the intended recipient(s) and may contain confidential and 
privileged information and must be protected in accordance with those 
provisions. Any unauthorized review, use, disclosure or distribution is 
prohibited. If you are not the intended recipient, please contact the sender by 
reply e-mail and destroy all copies of the original message.

(My corporate masters made me say this.)

Reply via email to