SQL-запросы в BASH-скрипте - PullRequest
       2

SQL-запросы в BASH-скрипте

0 голосов
/ 31 августа 2018

Я использую Hadoop для выполнения своих запросов.

Я хочу использовать переменные BASH в своем запросе. Вот пример:

export month="date +%m"
export year="date +%Y"

beeline -u jdbc:hive2://clustername.azurehdinsight.net:443/tab' 
-n myname -e "select * from mytable where month = '$month' and  
year = '$year';"

Но запрос пуст, так что в действительности это не так в Hive.

select * from mytable where month = '$month' and  
year = '$year';

не пустой запрос в Hive.

Есть ли проблема в моем bash-скрипте?

1 Ответ

0 голосов
/ 31 августа 2018

Вам нужно выполнить команду date, используя $(), изменить

export month="date +%m"
export year="date +%Y"

с

export month=$(date +%m)
export year=$(date +%Y)

Вы можете использовать hivevar аргументы с beeline

beeline -u jdbc:hive2://clustername.azurehdinsight.net:443/tab \
-n myname \
--hivevar month=$month \
--hivevar year=$year \
-e "select * from mytable where month = '${hivevar:month}' and year = '${hivevar:year}';"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...