我的表看起来像这样:
CREATE TABLE test_ids (id STRING)
当我向此字符串列插入一个大数值时,它会被舍入:
INSERT INTO test_ids SELECT "12345678901234567890"
检查存储的值时,它会像这样返回:
12345678901234567000
注意:这是在hive 3.1.0的Hortonworks部署中
我终于意识到这个舍入不是在hive中完成的,而是在Zeppelin UI中我运行我的SELECT查询返回舍入结果。这个问题有一个漏洞:https://issues.apache.org/jira/browse/ZEPPELIN-1434
在UI上显示时,它只是四舍五入,因此底层数据是正确的。