
# 为什么有时候用浮点数做等值比较查不到数据
#### 原因分析
浮点数的等值比较问题是一种常见的浮点数问题。因为在计算机中，浮点数存储的是近似值而不是精确值，所以等值比较、数学运算等场景很容易出现预期外的情况。
MySQL中涉及浮点数的类型有float和double。如下示例中遇到的问题：
![](https://support.huaweicloud.com/trouble-rds-mysql/zh-cn_image_0000002212221640.png "点击放大")
#### 解决方案
1. 使用精度的方法处理，使用字段与数值的差值的绝对值小于可接受的精度的方法。示例： ![](https://support.huaweicloud.com/trouble-rds-mysql/zh-cn_image_0000002247221761.png "点击放大")
   
2. 使用定点数类型(DECIMAL)取代浮点数类型，示例： ![](https://support.huaweicloud.com/trouble-rds-mysql/zh-cn_image_0000002247221757.png "点击放大")
   
 
