Hive关于浮点数比较

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/xiao__jia__jia/article/details/102637008

                         Hive关于浮点数比较

目录

1、案例

2、解决方案


 

1、案例

定义:deductions map<String, Float>类型

 实际上0.2对于float类型是0.2000001,而对于double类型是0.20000000001。当表中的float值通过hive转换位double值是,其产生的double值是0.200000100000。

2、解决方案

方案一:将deductions的定义改为 map<String, Double>类型。
方案二:用cast函数, deductions['Federal Taxes'] > cast(0.2 AS FLOAT);
方案三:避免使用浮点数。

猜你喜欢

转载自blog.csdn.net/xiao__jia__jia/article/details/102637008