我的問題是小數部分四捨五入。我將數據保存在循環中。只有上次更新的項目更改不正確。
例如 - 保存的號碼是13778.12888,表中的值是13778,1。正在保存:$this->save($data) - debug($data)
顯示正確的值。保存過程中小數部分四捨五入
0
A
回答
0
當你選擇一個定義爲FLOAT(n)
且n小於25的浮點類型的列時,MySQL似乎將輸出四捨五入成爲6位有效數字,這絕對是令人驚訝的。該值爲,存儲爲,但具有IEEE單精度浮點數的完整精度。要獲得完全精確的值,可以使用一個簡單的技巧,比如加0;檢查出來:
create table numbers (f float(24));
insert into numbers set f = 12345678;
select f from numbers;
-- 12345700
select f + 0 from numbers;
-- 12345678
使用雙精度型FLOAT(53)
你沒有得到這個四捨五入的效果,但它會使用兩倍的存儲。
+0
謝謝。你的建議很有幫助。 – Roman
相關問題
- 1. SQL存儲過程部門小數四捨五入
- 2. 通過小數四捨五入創建SelectionBorder:面部位?
- 3. MS Access四捨五入SQL小數位
- 4. pyodbc SQLSERVER光標小數四捨五入
- 5. F#四捨五入到小數
- 6. 小數四捨五入合併?
- 7. Smarty:四捨五入至小數
- 8. 四捨五入長小數點
- 9. 四捨五入到兩個小數點
- 10. 四捨五入高達9位小數
- 11. 四捨五入爲最小整數值
- 12. 四捨五入無小數小數點不加分
- 13. .Net:number.ToString四捨五入
- 14. 四捨五入TSQL
- 15. summary()四捨五入
- 16. \(Double)四捨五入
- 17. Python3.3四捨五入
- 18. sprintf四捨五入
- 19. Javascript - 四捨五入
- 20. Java四捨五入
- 21. Convert.ToSingle四捨五入
- 22. parseFloat四捨五入
- 23. 四捨五入至整數
- 24. 數字四捨五入
- 25. 四捨五入數字
- 26. 四捨五入數字
- 27. Rspec eq()四捨五入數
- 28. java四捨五入數
- 29. 四捨五入數字
- 30. 四捨五入數量VB
你是如何定義數據庫中的列的? – Joni
FLOAT(11)。先行值是正確的,只有最後更新的項目不是。 – Roman