К сожалению, это невозможно в Hive.В качестве обходного пути вы можете вычислить переменную в оболочке и передать ее в Hive, используя переменную --hivevar
. Limit * В предложении допускаются только рассчитанные переменные или константы в качестве аргументов:
Демонстрация с переменной.Вы также можете передать его в качестве аргумента --hivevar
в командной строке куста:
hive> set hivevar:limit=10;
hive> select 10 limit ${hivevar:limit};
OK
10
Time taken: 0.098 seconds, Fetched: 1 row(s)