这个是由于浮点数的精度问题导致的,17.955 在二进制里只能保存为17.954999999999998,所以 round 只能返回17.95。可以考虑将其转换为 DECIMAL 类型,再使用 round 进行规约,如:round(19.955$DECIMAL32(3), 2)
相关参考资料:DECIMAL 使用教程
这个是由于浮点数的精度问题导致的,17.955 在二进制里只能保存为17.954999999999998,所以 round 只能返回17.95。可以考虑将其转换为 DECIMAL 类型,再使用 round 进行规约,如:round(19.955$DECIMAL32(3), 2)
相关参考资料:DECIMAL 使用教程