mysql--探索数据类型float

在Mysql中,float和double用来表示浮点数。他们的精确性都有些问题。下面我们通过测试来探索一下float

测试一:

    测试不指定精度的效果。如下图:

mysql--探索数据类型float

结论:在不指定精度的情况下,folat默认是6位有效数字。

测试二:

指定精度float(m),如下图:

mysql--探索数据类型float

结论:和不指定精度相同,只保留6位有效数字。如果单指定精度m,m>24时,float会变为double类型。

测试三:

指定精度和标度。float(m,d)。m:指的是有效数字;d:指的是小数位数

mysql--探索数据类型float

结论:指定精度和标度后,对于整数位就有了要求,及四舍五入之后的值有个最大限制。m must be >= d

测试四:

mysql--探索数据类型float

结论:可以看到值有误差。这是浮点特有的问题,所以在设计到一些精度要求较高的应用时,不能用浮点,可采用定点。