<t>Never ever should you use money. It is not precise, and it is pure garbage; always use decimal/numeric.<br/>
<br/>
Run this to see what I mean:<br/>
<br/>
DECLARE<br/>
@mon1 MONEY,<br/>
@mon2 MONEY,<br/>
@mon3 MONEY,<br/>
@mon4 MONEY,<br/>
@num1 DECIMAL(19,4),<br/>
@num2 DECIMAL(19,4),<br/>
@num3 DECIMAL(19,4),<br/>
@num4 DECIMAL(19,4)<br/>
<br/>
SELECT<br/>
@mon1 = 100, @mon2 = 339, @mon3 = 10000,<br/>
@num1 = 100, @num2 = 339, @num3 = 10000<br/>
<br/>
SET @mon4 = @mon1/@mon2*@mon3<br/>
SET @num4 = @num1/@num2*@num3<br/>
<br/>
SELECT @mon4 AS moneyresult,<br/>
@num4 AS numericresult<br/>
<br/>
```<br/>
<br/>
Output: 2949.0000 2949.8525<br/>
<br/>
To some of the people who said that you don't divide money by money:<br/>
<br/>
Here is one of my queries to calculate correlations, and changing that to money gives wrong results.<br/>
<br/>
```<br/>
select t1.index_id,t2.index_id,(avg(t1.monret*t2.monret)<br/>
-(avg(t1.monret) * avg(t2.monret)))<br/>
/((sqrt(avg(square(t1.monret)) - square(avg(t1.monret))))<br/>
*(sqrt(avg(square(t2.monret)) - square(avg(t2.monret))))),<br/>
current_timestamp,@MaxDate<br/>
from Table1 t1 join Table1 t2 on t1.Date = traDate<br/>
group by t1.index_id,t2.index_id<br/>
<br/>
```</t>