'字段列表'中未知列'cities.city'

时间:2018-03-24 14:46:52

标签: sqoop

  

'字段列表'中的未知列'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));

1 个答案:

答案 0 :(得分:0)

在sqoop命令的上述查询中,输出将有2列显示城市名称,这仅在select语句中指定,并且不会检索其他列。因此,当我们仅过滤匹配的城市名称时,完全连接会产生错误。

删除“完整”字样。并运行commnad。

我们将获得输出。