mysql数据类型 字节 含义
float(m,d) 4字节 单精度浮点型,8位精度,m是十进制数字的总个数,d是小数点后面的数字个数
double(m,d) 8字节 双精度浮点型,16位精度
float(7,4)的可显示为-999.9999,MySQL保存值时进行四舍五入,如果插入999.00009,则结果为999.0001
参数m存储数字的总长度,d却不同,影响到精度,小数点后的位数。
比如设一个字段定义为float(5,3),如果插入一个数123.45678,实际数据库里存的是99.999, 因为整数位和小数位超过限制长度5 根据小数位取最大值补齐
如果输入1.45678,数据库存储为1.457 小数点后面的数别四舍五入截成457了。
注意:一定要注意数字的长度,决定存储的最大值 m 和d精度值
定点数(decimal)
依赖于M和D的值
decimal(m,d) m必须大于等于d
浮点型在数据库中存放的是近似值,而定点类型在数据库中存放的是精确值。
参数m是定点类型数字的最大个数(精度),范围为0~65,
d小数点右侧数字的个数,范围为0~30,但不得超过m。
对定点数的计算能精确到65位数字。