概述
使用-hiveconf传参
测试脚本
-- test.sql
select 'Start Testing ...';
select ${hiveconf:day}, '${hiveconf:url}';
select 'Test End!';
命令行
hive -hiveconf day=20180716 -hiveconf url='www.baidu.com' -S -f test.sql
结果
Start Testing ...
20180716 www.baidu.com
Test End!
注意
hive -hiveconf day='monday' -hiveconf url='www.baidu.com' -S -f test.sql
运行上述命令,会报如下错误:
Start Testing ...
FAILED: SemanticException [Error 10004]: Line 3:7 Invalid table alias or column reference 'monday': (possible column names are: )
其原因在于,sql脚本中的${hiveconf:day}没有加引号,即day默认为数字型参数。然而,上述命令传入了字符型参数day=‘monday’,导致解析错误。
因此,字符型参数传参时,在脚本中必须加引号(如’${hiveconf:url}’),才能正确获得参数。
参考
Hive脚本接受参数
最后
以上就是开心钥匙为你收集整理的Hive执行脚本时传参的全部内容,希望文章能够帮你解决Hive执行脚本时传参所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复