变量 – 评估HIVE集合语句中的表达式

在我的hive查询中,我设置了一些变量.

但是我意识到hive记住了表达而不是值,例如:

set a=1 ;
set b=2 ;
set c= ${hiveconf:a} + ${hiveconf:b} ;
set c ;
-- the command above returns
-- c=1 + 2

为什么Hive不评估价值?有没有办法设置蜂巢这样的
设置c;在我之前的例子中会返回c = 3吗?

最佳答案
通常,您只需在CLI中定义变量.评估将在map reduce run期间进行,例如.

SELECT ${hiveconf:c} FROM yourTable LIMIT 1;

会给你c的计算值.

转载注明原文:变量 – 评估HIVE集合语句中的表达式 - 代码日志