我有这个查询
(case when a.item_no >= '77000' and a.item_no <='77099' then
(op_drill + op_machine + op_ssd + op_freight + op_paint + ((actual_tooling * 1.2)))
else (op_drill + op_machine + op_ssd + ((op_drill + op_machine + op_ssd) *.27) + ((op_drill + op_machine + op_ssd + op_freight + (op_curforg *1.25) + ((op_drill + op_machine + op_ssd)*.27)) * .075)+
op_freight + (op_curforg *1.25) + op_paint)
end) as new_cost,
它返回10.1201575
在vb.net中,我可以运行此语句
dblNewCost = Math.Round(dblNewCost, 2, MidpointRounding.AwayFromZero)
返回10.13
有没有办法复制这个是sql server。我尝试了圆(num,2),但没有正确显示
答案 0 :(得分:1)
我认为你还有其他一些问题。 SQL Server ROUND()函数就像VB一样工作。使用Math.Round(10.1201575, 2, MidpointRounding.AwayFromZero)
无法返回10.13。比较两边都要舍入的数字,以确保你比较苹果与苹果。