Real numbers is MySQL



MySQL中比较实数时,我应该采取预防措施吗?

# Get completly paid bills
select * from bills left join payments on bills.id = payments.bill
         where bills.price = payments.price;

在通常的编程语言(如 C/C++)中,实数(浮点数)之间的此类比较必须使用充当比较精度的delta值来完成:

if (abs(bill_price - payments_bill) <0.00001) 做点什么

但我不知道MySQL是否有这样的精度问题。

MySQL的内部浮点格式是64位IEEE。

是的,在MySQL中进行这种算术时,您需要担心机器epsilon(舍入误差)。

相关内容

  • 没有找到相关文章

最新更新