MySQL中的float类型慎用!慎用!慎用!

在前端输入一串数字后有时候展示值与输入的内容一致,有时候却不一致。经分析,原来是MySQL数据库中字该字段的类型是float,该字段的值超过6位有效数字后就会进行四舍五入截取,举例来说:假设float类型字段的输入值是123456789,那么它的科学计数法是1.23456789E8;由于有效位数是6位,所以在7数字时会四舍五入,即值为1.23457E8,十进制值就是123457000

1、float类型值不超过6位有效数的效果
MySQL中的float类型慎用!慎用!慎用!_第1张图片
2、float类型值超过6位有效数的效果(后三位全是0!!!)
MySQL中的float类型慎用!慎用!慎用!_第2张图片

注意:有关金额的字段类型最好不用float类型!!!

如果一定要用小数,那么,请选择DECIMAL类型。
在这里插入图片描述
上图配置表示:整数部分+小数部分总共是65位数,小数位保留两位数字。
MySQL中的DECIMAL对应Java中的java.math.BigDecimal类型的变量。

参考:
https://www.cnblogs.com/bien94/p/13332163.html
https://blog.csdn.net/weixin_35830723/article/details/113632107
https://www.cnblogs.com/danielzzz/p/16824214.html

你可能感兴趣的:(Database,mysql)