mysql 的float 字段显示的值和存的值不是一样的,条件查的时候会查不到,解决方法如下 查询的时候用like精确设置小数位float(10,1)mysql字段类型修心为decimal用绝对值小于一个小数的方法 SELECT * FROM test WHERE ABS(score- 98.1) < 1e-3 其实java 本身的float类型也有这要的问题,能不用尽量不用