Цикл с использованием Hiveql
Я пытаюсь объединить 2 набора данных, скажем, A и B. В наборе данных A есть переменная «Flag», которая принимает 2 значения. Вместо того, чтобы просто объединить обе данные, я пытался объединить 2 набора данных на основе переменной «flag».
Код слияния следующий:
create table new_data as
select a.*,b.y
from A as a left join B as b
on a.x=b.x
Поскольку я запускаю код Hive через CLI, я вызываю это с помощью следующей команды
hive -f new_data.hql
Часть цикла, которую я вызываю для объединения данных на основе переменной «Flag», выглядит следующим образом:
for flag in 1 2;
do
hive -hivevar flag=$flag -f new_data.hql
done
Я поместил приведенный выше код в другой файл ".hql", называя его:
hive -f loop_data.hql
Но это ошибка.
не может распознать ввод рядом с 'for' 'flag' 'in'
Кто-нибудь, пожалуйста, скажите мне, где я делаю ошибку.
Спасибо!