我在mysql中有一个表说emp
列名是emp.id,emp.name,emp.salary,emp.dno
现在我执行sqoop导入并在单个语句中创建一个hive表emp。
当我使用select * query
查询hive表emp时我收到错误
Error while compiling statement: FAILED: RuntimeException java.lang.RuntimeException: cannot find field emp from [0:emp.id, 1:emp.name, 2:emp.salary, 3:emp.dno]
由于hive不支持特殊字符我该如何解决这个问题。
我们可以用_(下划线)替换。(点),因为配置单元支持列名中的下划线。
如果是,那我们该怎么做呢。
答案 0 :(得分:1)
完成sqoop导入后,您可以尝试在hive中更改列名
ALTER TABLE EMP
CHANGE `emp.id` emp_id int