mysql的float条件查询不到结果,sql的一些其他问题

记一下今天遇到的问题

1. float用=匹配不到结果

sql:
  select * from table1 where low=74.9  # 这个sql查不到结果,但是实际上数据库里面有,low是float类型
  将low字段换成decimal类型,就可以查出来结果
原因:
  float类型存在误差,不能使用=号来比较值。大部分用float类型的字段,应该都是取范围做比较的。
  如果没有特别要求,设计数据库的时候,建议使用decimal类型
posted @ 2022-07-16 11:41  10132714  阅读(685)  评论(0)    收藏  举报