首页 > 其他 > 详细

Hive 中 set 定义出来的变量以及 hive -d 设置的变量

时间:2020-04-03 00:03:35      阅读:448      评论:0      收藏:0      [点我收藏+]

set自定义变量

今天踩了一个坑:

在hive的命令行操作中,用set 命令可以自定义出一个变量,但是在函数中使用时确调不出来,如图

技术分享图片

 

 在查找原因时,这位大佬的博客https://www.cnblogs.com/superpang/p/4639145.html启发了我,会不会是命名空间的原因让函数调用时无法找到变量呢

技术分享图片

 

 这次用带命名空间的方式重新定义了变量,然后再次调用函数,见证奇迹的时刻到了!

技术分享图片

 

 这说明

“在hive中使用set操作自定义变量时,hivevar:命名空间不是可选的,应该是在使用set定义变量时时刻加hivevar:命名空间,以免出现难以找出的错误。”

 

hive -d 自定义变量

而当用hive -d 自定义出来的变量时,不需要加命名空间,也可以在函数中正常调用

 

 hive -d json=$(cat jsontest)

 

技术分享图片

 

 技术分享图片

 

Hive 中 set 定义出来的变量以及 hive -d 设置的变量

原文:https://www.cnblogs.com/yangxusun9/p/12623903.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!