0

このクエリがあります

(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. round(num,2) を試しましたが、正しく表示されませんでした

4

1 に答える 1

1

他に問題があると思います。SQL Server の ROUND() 関数は VB と同じように機能します。Math.Round(10.1201575, 2, MidpointRounding.AwayFromZero)10.13 を返す方法はありません。両側で丸められている数値を比較して、リンゴ同士を比較していることを確認してください。

于 2013-10-21T21:47:13.153 に答える