簡體   English   中英

在SQL Server 2008 R2中取整

[英]Rounding in sql server 2008 R2

我有這個查詢

(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),但未正確顯示

我認為您還有其他問題。 SQL Server ROUND()函數的功能與VB的功能相同。 無法使用Math.Round(10.1201575, 2, MidpointRounding.AwayFromZero)返回10.13。 比較雙方的四舍五入數字,以確保您比較的是蘋果與蘋果。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM