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.)