Неизвестный столбец 'towns.city' в 'списке полей'
неизвестный столбец 'towns.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 не ноль auto_increment, страна varchar(30) не ноль,city varchar(30) не ноль, первичный ключ (id));
Схема норм:
создать таблицы норм (id int не ноль auto_increment,country_id int не ноль,city varchar(30) не ноль, первичный ключ (id));
1 ответ
В приведенном выше запросе в команде sqoop выходные данные будут иметь 2 столбца, в которых отображаются названия городов, и это указывается только в операторе выбора, и другие столбцы не извлекаются. Полное объединение дает ошибку, поскольку мы фильтруем только совпадающие названия городов.
так что уберите слово "полный" и запустите комнад.
мы получим вывод.