带有GROUP BY的MySQL SUM生成长小数

时间:2017-02-20 23:30:04

标签: mysql math group-by sum

所以,我不知道为什么会这样。我知道我可以通过舍入来修复它,但我想知道为什么我甚至需要。我正在选择一组double,按公共因子对它们进行分组,并对它们应用SUM。在结果中,我得到非常长的小数,有时是圆形重复。示例可能是185708.90000000002或199959.34999999998。

我不知道这是怎么发生的。最精确的数字在求和之前是10 ^ 2。重要的是要注意,这并不是偶尔发生的。在大多数情况下,数字看起来是正确的。

1 个答案:

答案 0 :(得分:0)

由于评论,我找到了这个问题的答案。 Floats和Doubles不会在内部存储为完全数字。将列转换为Decimal可以解决大多数问题。