我們的問題被歸納爲以下兩個語句:TSQL Round()不一致?
select convert(float, (convert(float,5741.61)/convert(float, 196.00)) * convert(float,14.00)) as unrounded, round(convert(float, (convert(float,5741.61)/convert(float, 196.00)) * convert(float,14.00)), 2) as roundedTo2dp
select convert(float, 410.115) as unrounded, ROUND(convert(float, 410.115), 2) as roundedTo2dp
的第一條語句使用浮動計算的410.115值,也與圓()到小數點後2位的是結果。整數值在410.11出來。
第二條語句使用浮點值410.115並將其舍入到小數點後兩位。四捨五入結果爲410.12。
爲什麼一個人四捨五入,另一個四捨五入時,它的價值被四捨五入相同?
我怎樣才能得到410.12的第一個陳述?
編輯:道歉格式 - stackoverflow不顯示任何格式在這臺機器上(很奇怪)。