跳至正文

mysql sum函数后面好多位小数点解决方法

在mysql中,如果你属性是float、double或者string,现在要对这个列的数据进行累加操作,sum聚合函数的使用后,可能会在结果中出来很多的小数点,怎么能让进行精确累加呢?

在mysql进行聚合的时候,把数据类型转换为decimal,具体使用如下:

SELECT
count(id) AS total,
cast(
sum(commission) AS DECIMAL (19, 5)
) AS sumComm
FROM
jd_settle_order

结果:虽然后面多了三个0,但是结果是精确的。

解决基本思路:

SUM(field) 替换为:cast(sum(field) AS decimal(10,2)) 即可

标签: