2

看MYSQL上的奇怪问题。 替代文字

查看第 3 列。结果是 0.02876121,但实际结果应该是第 4 列 = 0.02876。为什么MYSQL在小数点上给出错误值?

*另一件事是,如果我附加“Where column = 'uniquevalue'”来返回我想要的结果,它只会给出错误的值。如果我删除 where 条件,给出表中的所有记录,则该值是正确的。

4

1 回答 1

0

我怀疑这与计算中使用的数据类型有关。

如果 'rank' 和 'program_count' 是整数和小数的混合,则 SUM() 将返回一个十进制值,否则它将返回一个浮点值。否则 SUM() 将给出浮点数或双精度数。

在 SQL 中 float 和 double 是近似值,您可以使用 Float 关键字定义准确度级别。

在您的表中,各种列是什么数据类型?

于 2010-09-13T08:52:34.230 回答