当在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
恰恰为什么我转换为十进制 –