在Hive脚本中设置动态日期变量

时间:2018-08-02 20:11:29

标签: variables dynamic hive

我想设置日期变量,该变量根据当前日期计算日期范围。没有变量,我可以使用:

SELECT name, date 
FROM table1 
WHERE date > DATE_ADD(CURRENT_DATE, -10);

但是我想为日期设置一个变量(我们将其称为datevariable),以便可以在整个脚本中一遍又一遍地调用它。我尝试将变量设置为:

set datevariable=DATE_ADD(CURRENT_DATE,-10);

SELECT name, date 
FROM table1
WHERE date > '${hiveconf:datevariable}';

但这会引发错误。

1 个答案:

答案 0 :(得分:0)

要设置动态日期变量,请使用:

set hivevar:datevariable=DATE_ADD(CURRENT_DATE,-10);

可以按以下方式使用此变量:

SELECT name, date
FROM table1
WHERE date > CAST(${datevariable} AS STRING);