需求 订单列表 有金额 有总订单额统计, 展示的效果是下面的金额累计 48.22 总金额48.23 总金额进了一位. 因为存库数据是8位精度 .
使用 TRUNCATE函数 解决该问题, select sum(TRUNCATE(amount,2)) from table
截取精度为2位进行汇总.
下面介绍该函数
1、TRUNCATE()函数介绍
TRUNCATE(X,D) 是MySQL自带的一个系统函数。
其中,X是数值,D是保留小数的位数。
其作用就是按照小数位数,进行数值截取(此处的截取是按保留位数直接进行截取,没有四舍五入)。
2、数值保留规则
规则如下:
1)当 D 大于0,是对数值 X 的小数位数进行操作;
2)当 D 等于0,是将数值 X 的小数部分去除,只保留整数部分;
3)当 D 小于0,是将数值 X 的小数部分去除,并将整数部分按照 D 指定位数,用 0 替换。