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


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)

 

 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM