當在mysql中的double和decimal之間轉換時,是否會有數據丟失?從DOUBLE(15,2)轉換爲DECIMAL(15,2)
3
A
回答
2
雙打有精度~16十進制數字。所以答案是否定的,因爲這兩種類型都被聲明爲具有15位精度的十進制數字。 (如果類型有16位數,則取決於存儲的數字,因爲雙精度實際上在15到16位之間。)
0
DECIMAL的最大位數是65(64位來自MySQL 5.0。 3至5.0.5)。在MySQL 5.0.3之前,DECIMAL值的最大範圍與DOUBLE的最大範圍相同,但給定DECIMAL列的實際範圍可以受給定列的精度或比例限制。 Manual
我猜不是。
0
雙精度浮點數精確到小數點後15位。 DECIMAL的精度爲65位數。從DOUBLE轉換爲DECIMAL時不會丟失任何數據。正如Brad所說,之前的DECIMAL值的最大範圍與DOUBLE的相同。 Numeric Type Overview
如果您對數據進行數值計算並且需要更多15位小數,我建議您花時間將列轉換爲DECIMAL,因爲DOUBLE存儲的是近似值而非實際值。
相關問題
- 1. SQL中的數字(15,2)等價於MySQL?
- 2. Newtonsoft JSON-從/從DataSet轉換導致Decimal變爲Double?
- 3. 可以在MySQL中將DECIMAL轉換爲DOUBLE嗎?
- 4. Dim x爲十進制= 100.0m是否會隱式地從double轉換爲decimal?
- 5. 錯誤:無法從Double **轉換爲Double
- 6. 從int轉換爲double
- 7. DB2將轉換爲DECIMAL
- 8. PHP float/double存儲爲MySQL DECIMAL
- 9. 無法從ulong []轉換爲double []
- 10. C++編譯器從double轉換爲int
- 11. 在VS2010中從'double'轉換爲'int'C++
- 12. 將變量從Double轉換爲Int
- 13. 無法將'double(_cdecl *)()'轉換爲'double'
- 14. 將C++ double轉換爲DEC double
- 15. 將double轉換爲long double的算法
- 16. 將C++ double *轉換爲Java double
- 17. Java錯誤:double無法轉換爲double []
- 18. 無法將double轉換爲double [] error
- 19. 如何將Double []轉換爲double []?
- 20. C#將DataRow中的Double類型轉換爲XSD序列化對象中的Decimal
- 21. 無法將類型'System.Collections.Generic.IEnumerable <decimal>'隱式轉換爲'decimal'
- 22. 從Int32到Decimal的轉換無效
- 23. MySQL中的DOUBLE和DECIMAL
- 24. 如何將貨幣轉換爲Decimal vb.net?
- 25. 將DECIMAL(16,4)轉換爲DATETIME MySQL
- 26. C++將vector <pair <double,double >>轉換爲double *,double *?
- 27. 將int轉換爲double
- 28. 將long double轉換爲CString
- 29. 將double []轉換爲System.array c#
- 30. mysql將float轉換爲double
恰恰爲什麼我轉換爲十進制 –