我正在运行配置单元查询 hive -hiveconf prvDate=$prvDate -S -e "select max(ID) from Employee where unix_timestamp(date,'dd-MM-yyyy') > unix_timestamp('${hiveconf:prvDate}','dd-MM-yyyy')"
它正在返回null。prvdate是 15-12-2017
但是当我在Hive里运行相同的脚本时
select max(ID) from Employee where unix_timestamp(date,'dd-MM-yyyy') > unix_timestamp('15-12-2017','dd-MM-yyyy')
我能看到结果。有人能帮忙吗?
2条答案
按热度按时间gijlo24d1#
如果在shell脚本中使用内联sql运行配置单元,则不需要传递-hiveconf变量,而是使用shell替换。
示例(shell):
产量:1483257600
仅在执行sql脚本文件时使用--hiveconf:
zlwx9yxi2#
这是因为您正在调用hiveconf var,更改名称应该可以工作