Hive 查询报错 FAILED: RuntimeException java.lang.RuntimeException: cannot find field

2021/9/17 11:34:45

本文主要是介绍Hive 查询报错 FAILED: RuntimeException java.lang.RuntimeException: cannot find field,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

项目场景:

使用hive sql 查询

问题描述:

查数时使用*报错找不到字段

select a.* from mydb.p_6 a;

直接报错

Error: Error while compiling statement: FAILED: RuntimeException java.lang.RuntimeException: cannot find field (0~0 from [0:day, 1:0, 2:(0~0.1], 3:(0.1~0.2], 4:(0.2~0.3], 5:(0.3~0.4], 6:(0.4~0.5], 7:(0.5~0.6], 8:(0.6~0.7], 9:(0.7~0.8], 10:(0.8~0.9], 11:(0.9~1), 12:1] (state=42000,code=40000)

原因分析:

找不到“0~0”这个字段,创建表的时候字段取名为(0~0.1],这些,导致读取字段不完全,

解决方案:

创建表的时候字段取名要规范,尽量不要带逗号这样一些什么的符号,尽量英文字母加下划线及数字这些



这篇关于Hive 查询报错 FAILED: RuntimeException java.lang.RuntimeException: cannot find field的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程