当我比较where子句中的浮点值时,它不会给出正确的结果。
例如

SELECT * FROM users WHERE score = 0.61

在这个查询中,score是一个double类型的列
但是,如果我检查要0.50的分数,那么上面的查询就可以工作,当我有0.61的记录时,没有其他任何东西被搜索
如果我使用
SELECT * FROM users WHERE trim(score) = 0.61

最佳答案

我建议您使用decimal而不是float。它也只有两个小数位。
这是关于如何使用它的文档。Link
我希望这能解决你的问题。

关于mysql - 在mysql中比较double值似乎无法正常工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43224486/

10-08 21:16