在hive中传递参数对我不起作用。我的代码:
hive> set x='test variable';
hive> ${hiveconf:x};
我收到此错误:
失败:解析错误:第1行:0无法识别
''test variable'' '<EOF>' '<EOF>'
附近的输入
答案 0 :(得分:1)
hive> ${hiveconf:x};
将字面替换'test variable'
。所以你正在执行命令
hive> 'test variable';
应该导致错误,因为那不是我见过的SQL命令。
如果您尝试输出x的值,则只需执行
SET x;
如果要在语句中使用x的值,可以执行
SELECT * FROM TABLE tbl WHERE a=${hiveconf:x};
将运行命令
SELECT * FROM TABLE tbl WHERE a='test variable';
答案 1 :(得分:0)
尝试:
x
您将在许多变量的值中看到{{1}}变量的值。