如另一篇針對OLEDB 的發問,小弟正在寫一個用以回報產線人員生產績效的網站。
其中績效點數的計算是以單位時間內的(產值/標準產值)*10。
最後取小數點後一位進行四捨五入。
找了一些方法:
select [EE] = Convert(decimal(4,1),450*10.0/1440)
set @tResult = ( convert(decimal(4,1),(450*10.0/1440)))
在QA裡都能得到正確的結果。
但是我寫成自訂函數時,所取得的值就會出錯了,以上例而言,結果應該是要3.1
但如果寫成函數或是直接寫進trigger 裡 , 在資料列裡的資料就會變成:3.0999999046325684
如果在函式裡沒有宣告float 長度的話:在資料列裡的資料就會變成:3.1000000000000001
請問該如果讓我到正確的3.1 而不需要有後面那串小數點呢
謝謝各位的指教。