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