>>>Hi,
>>>
>>>I have this query:
>>>
>>>
select Cases.Fee
>>> ,ApplicationCodes.TaxRate
>>> ,newcalc = round(cases.Fee * ApplicationCodes.TaxRate, 2)
>>> from Cases
>>> left outer join ApplicationCodes on 1=1
>>>where ID = 2367
>>>
>>>In this case Fee = 2971.50 and Taxrate = 0.15
>>>
>>>so by my math newcalc = 2971.50 * 0.15 = 445.725
>>>
>>>which when rounded to 2 decimal places I should get 445.73
>>>
>>>Why would SQL Server be returning 445.72?
>>
>>What are the types of these columns?
>
>Thanks I solved it. The types were float and money. Casting to numeric fixes it.
Exactly. That was my first thought - that both or one of them is float.
If it's not broken, fix it until it is.
My Blog