玖叶教程网

前端编程开发入门

MySQL - sum统计出现多位不精确小数


简介

MySQL中,如果出现float字段,统计的时候经常出现不精确的小数。



解决方法

1、转换成整数进行存储

例如,金额可以精确到分,然后乘以100进行转换

操作统计的时候,再除以100



2、使用decimal代替float

例如:

money float  =>   decimal(16,2)

统计的时候

select   month,  cast(sum(money) AS DECIMAL (16, 2)) as money from bills group by month; 

3、使用binary关键字解决

select   month,  sum(binary(money)) as money from bills ; 

总结

推荐是使用整数的方式,避免过多的函数转化,导致结果出现异常。


发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言