1
2
从未 将=与浮点一起使用,因为如果不发生舍入错误,则无法预测。始终使用<或>,取决于你想要实现什么。 第二:这两个公式都没有错。在内部,这两个变量都在其变量中编码为最接近的二进制表示形式,这与您设置的值略有不同。 小数点前一位是标准数字,因此使用以下所有数字。在右侧,您专门定义逗号出现的位置,从而“浪费”变量二进制表示末尾的某个部分,这会导致舍入错误(在本例中)。 |
2
1
|
3
1
MySQL,就像几乎所有使用浮点运算的计算机实现一样,使用 IEEE-754 standard 正如不可能用十进制写1/3,也不可能用二进制浮点写无限多个数字(考虑到计算机在时间和空间上的限制)。一个浮点使用32位,一个双精度使用64位,从数学上讲,这对于无限多个分数来说是非常小的空间。
精确小数也存在,但限于固定范围(即没有高指数)。在MySQL中,您可以使用
|
4
0
在这方面,幸运的是第一个比较准确:
选择与所涉及的值相对应的差值(我使用了0.0001)。 |
hello_programmers · Mysql从其他表输出一列 1 年前 |
Community wiki · 这个MySQL语句出了什么问题? 1 年前 |
Community wiki · 优化从同一表中提取的多列的查询 1 年前 |
Popo · Sql查询:返回数据库中不可用的where条件 1 年前 |
Hamdan Nuramdani · 对账单中一周内不同表中的数据求和 1 年前 |
Kugelfisch · 用php为数据库加密数据 1 年前 |