Hey there,

I had some similar problems recently, try this

select someid, somemoneyfield * 2::float as product from table;

You cannot multiply money * money, apparently.  But, money * float seems
to work fine.  Same goes with division:

select someid, somemoneyfield / 2::float as quotient from table;

Hope this helps.


On Sat, 12 Dec 1998, Bill Sneed wrote:

> Date: Sat, 12 Dec 1998 22:09:19 +0000
> From: Bill Sneed <[EMAIL PROTECTED]>
> To: "[EMAIL PROTECTED]" <[EMAIL PROTECTED]>
> Subject: [GENERAL] Money
> 
> I' m trying to perform some simple arithmetic with a field datatype,
> money.
> 
> For example, select part_id, cost from parts;  gives the id and cost
> in dollars...
>            select part_id, cost+1.00 from parts; ....adds $1.00 to
> displayed cost.
>            select part_id, cost*2 from parts; produces an error message...
> "There is no operator '*' for types money.....retype this query  using
> an explicit cast or.....define the operator using CREATE OPERATOR."
> 
> If I examine the list of operators using \do,  there are any number of
> them shown for *, money, int2, float4, etc.
> 
> Question 1:  Is this a list of existing oeprators or a list of
> permitted ones that I have to create?
> 
> Question 2:  I can't figure out haw to use the CAST ::   ....Any
> hints?
> 
> Again, TIA to one and all.
> 
> .......Bill Sneed....Prospect, Maine......
> 
> 
> 

Reply via email to