'字段列表'中的未知列'cities.city'
sqoop import \
--connect jdbc:mysql://localhost/sivam_db \
--username root \
--password cloudera \
--query 'select cities.city as ccity,normcities.city as ncity from cities full join normcities using(id) where $CONDITIONS' \
--split-by id \
--target-dir /user/duplicatecolumn \
--m 1 \
--boundary-query "select min(id),max(id) from cities" \
--mapreduce-job-name fjoin \
--direct
我已检查过与此错误相关的所有帖子并尝试过,但仍未解决。
城市图式:
创建表城市(id int not null auto_increment,country varchar(30)not null,city varchar(30)not null,primary key(id));
规范图式:
create table normcities(id int not null auto_increment,country_id int not null,city varchar(30)not null,primary key(id));
答案 0 :(得分:0)
在sqoop命令的上述查询中,输出将有2列显示城市名称,这仅在select语句中指定,并且不会检索其他列。因此,当我们仅过滤匹配的城市名称时,完全连接会产生错误。
删除“完整”字样。并运行commnad。
我们将获得输出。