草庐IT

1478649561

全部标签

hadoop - 具有 unix 时间戳的 Hive float 据类型

我正在使用float数据类型的hive外部表(错误地)来存储Unix纪元时间戳。当我在配置单元外部表上发出where子句时,它会返回一些奇怪的结果。举个例子。selectevent_timefromtbl_namewhereevent_time=1478649561limit10输出:1478649600任何人都可以帮助我理解这里有什么问题吗? 最佳答案 这与其说是Hive问题,不如说是浮点精度的一般问题。您将看到1478649561(整数类型)在浮点表示中被近似以适应32位Java浮点类型的效果。为了在Hive上下文之外以更简单的