INFO-Hive 计算结果默认类型与cast 函数

以最常出现类型溢出的乘法为例,计算结果来自计算参数双方类型更大的那个,计算后再使用cast,无法改变结果。比如

INT * INT = INT

INT * BIGINT=BIGINT

## 样例如下
select 
900000*100000,                    ## -194313216
cast(900000*100000 as bigint),    ## -194313216
cast(900000 as bigint)*100000;    ## 90000000000

POPO-20250605-102447.jpg

参考资料

[1] https://cwiki.apache.org/confluence/display/hive/languagemanual+udf