1

我正在尋找有關Postgres和Excel中小數精度的任何文檔。Postgres小數精度VS Excel

我有一個通過excel導入的數據庫。我發現SUM()導致excel與Postgres中的SUM()方法稍有不同(通常在小數點的第3或第4位,這取決於我在數據中包含或排除的內容)。我很好奇這是否是由於浮動點精度的問題,或者是否有可能從進口導致一些小的差異。

+0

'1'。你期望在這裏實現什麼? '2'。這些是相當兩個非常不同的技術平臺,例如Excel是用於相當/相對簡單的計算,而另一個數據庫是一個完美容器,可容納任何類型的最佳容器(給出容器的DNA的完美程度) – bonCodigo

+0

簡單到找到Excel:http://en.wikipedia。 org/wiki/Numeric_precision_in_Microsoft_Excel –

+0

我需要回答他們爲什麼不同。客戶期待100%的匹配,事實並非如此。 xlxs文件用於創建數據庫,所以我期望它們也是一樣的 –

回答

0

您Postgres的in the manual找到文檔。

PostgreSQL的decimal浮點數,但一個任意精度的數字。附加像sum()確切在Postgres。

小數和數字的類型是相同的。這兩種類型都是SQL標準的一部分。

相反,MS Excel的運行精度有限。 Quoting Wikipedia在現場@Tim provided

與其他電子表格時,Microsoft Excel只適用於有限的 精度,因爲它僅保留至 描述的數字(它具有有限的精度)

一定數量的數字預期差異。你可以試試PostgreSQL的double precision類型,這看起來更好一些。我懷疑,你會得到100%的比賽,但。