我有一个浮动数据字段:
`total` float(20,2) unsigned NOT NULL,
我想插入一个浮动数字,如:“815032.68”,但不接受,数字四舍五入为815032.69。为什么呢?
答案 0 :(得分:1)
使用定点数据类型
`total` DECIMAL(20,2) unsigned NOT NULL
DECIMAL和NUMERIC类型存储完全数字数据值。在保持精确精度很重要时使用这些类型,例如使用货币数据。
浮点数据类型只能存储approximate numbers。
答案 1 :(得分:1)
浮点数是32位数,存储为尾数和指数,FLOAT可以具有的最大值是+ 8388608 * 10 ^ 127,最小值是-8388608 * 10 ^ 127。这意味着只有7位有效数字,并且您的FLOAT定义使用了20.使用双数据类型。