配置单元脚本参数的默认值

eagi6jfj  于 2021-06-26  发布在  Hive
关注(0)|答案(1)|浏览(352)

如果参数没有设置,我想使用默认值
e、 g.用于 hive -d param1=2014-06-20 我可以检索值,即。

hive> select '${param1}';
OK
2014-06-20

但对于一个尚未设置的变量,结果是

hive> select '${param2}';
OK
${param2}

我本以为是空的,等等
最后,如果参数没有被传入,我想使用一个默认值。

SELECT * FROM test_table t
WHERE t.date < COALESCE(${param1}, CURRENT_DATE)
r7s23pms

r7s23pms1#

似乎没有直接的文档化方法来实现这一点,但是可以测试参数值,如果值等于名称,则返回默认值。即

hive> select if(locate('${par', '${param2}')==0, '${param2}', CURRENT_DATE);
OK
2018-03-09

相关问题