MySQL小数除法精度

2023-07-17  本文已影响0人  giafei

MySQL除法运算默认保留4位小数,比如

select 1/3.0;

结果是 0.333
再比如

select 12499/100000.0

结果是0.1250
如果在此基础上再加工保留两位小数并四舍五入就会变成0.13,而如果直接保留两位小数应该是0.12
要解决这个问题可以在被除数上加上一个很小的数字,比如1e-35,

select 1/(3.0  + 1e-35);

值会是0.3333333333333333 一个很长的精度。这种方案还可以解决被除数是0的问题,不会报除零异常。

上一篇 下一篇

猜你喜欢

热点阅读