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

Hive 配置单元脚本参数的默认值,hive,hiveql,Hive,Hiveql,如果参数没有设置,我想使用默认值 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 < COALES

如果参数没有设置,我想使用默认值

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)
从测试表t中选择*
其中t.date
似乎没有直接记录的方法来执行此操作,但是可以测试参数值,如果值等于名称,则返回默认值。i、 e

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