sql里除法运算的精确问题

废话少说,上图

这样的结果肯定是不对的,于是我请求了群里的大神们

第一个给出的办法是

SELECT round(8999/20000,10) FROM `dict_code`

结果是0.4499500000,确实不是0.45了,但是我想要的是小数点后面两位数,round的值改成2又变成0.45了。

第二个尝试办法是SELECT cast(8999/20000 as DECIMAL(16,6)) FROM `dict_code`

效果差不多,都是小鼠点位数不同结果不同。

最后一种

SELECT TRUNCATE(8999/20000,2) FROM `dict_code`

完美的得出了我想要的0.44

 

posted @ 2022-08-17 10:33  蓝海的bug本  阅读(236)  评论(0编辑  收藏  举报