Postgres十进制精度VS Excel

时间:2014-03-18 23:50:19

标签: excel postgresql types floating-accuracy floating-point-precision

我正在寻找有关Postgres和Excel中小数精度的任何文档。

我有一个通过excel导入的数据库。我发现excel中的SUM()结果与Postgres中的SUM()方法略有不同(通常在小数点后3或4位,具体取决于我在数据中包含或排除的内容。我很好奇看看这是因为浮点精度问题,还是由于导入导致了一些小的差异。

1 个答案:

答案 0 :(得分:0)

您可以找到Postgres in the manual的文档。

PostgreSQL的decimal 不是一个浮点数,而是一个任意精度数。 Postgres中的sum()等附加内容完全

  

十进制和数字类型是等效的。这两种类型都是SQL标准的一部分。

相比之下,MS Excel的准确度有限。 Quoting Wikipedia网站@Tim provided

  

与其他电子表格一样,Microsoft Excel仅适用于限制   准确性,因为它只保留一定数量的数字   描述数字(精度有限)

预计存在差异。您可以尝试PostgreSQL的double precision类型,这似乎是更好的匹配。我怀疑,你会得到100%的匹配。