0
使用Apache Spark 2.0.2我有一個存儲爲parquet的表,其中包含大約23百萬行和大約300列。我有一個名爲TOTAL_PRICE存儲爲雙列,如果我執行:關於大數字聚集的錯誤
select sum(total_price) from my_table;
+-----------------+
| total_price |
+-----------------+
| 9.3923769592E8|
+-----------------+
因此這個數字9.3923769592 ê 8是錯誤的。
,但如果我執行:
select year, sum(total_price) from my_table;
+-------+------------------------+
| year| total_price|
+-------+------------------------+
| 2017| 44510982.10004025 |
| 2016| 293320440.63992333 |
| 2015| 311512575.890131 |
| 2014| 289885757.2799143 |
| 2013| 5192.319 |
| 2012| 2747.7000000000007|
+-------+------------------------+
我的假設是,在第一個查詢雙數據類型具有溢出或者類似的東西。
爲什麼我得到的點後面有這麼多小數的結果如果它們存儲爲#。##?
我該如何解決第一個查詢的錯誤?