为什么hive中两个bigint类型数据的 split ,整数除法截断不会发生,而presto会发生
最佳答案
Presto机械师:
connectors
从各种数据源加载数据进入 Presto JVM。 (Hive 连接器、Mysql 连接器等见 this)Java
处理(标量函数或聚合函数)数据代码。spill
)输出结果。在 Java 中
1/2=0
因此 Presto 将是相同的。在 Hive 中,我认为因为 UDF 就像 overrive operator
:LanguageManual+UDF为了避免截断,只需要'Thinking in Java':
int a = 1
int b = 2
c = 1.0*a/b
在 Presto SQL 中-- result: 0.3333333333333333
select cast(1 as double) / 3 from table_name
见:Migrating From Hive
关于sql - hive和presto,整数除法截断问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53075834/