在寫hive查詢的時候,如果遇到特殊字符需要使用一些轉義符進行轉義,如:
hive>select split(ip,’\&’) from students;
通過轉義,hive能識別&,並按&進行分割。
但現實中使用會有一些問題,如
hive>select split(ip,’\.’) from students;
該語句無法安裝’.'來分割ip。經過仔細研究發現需要寫成如下格式:
hive>select split(ip,’\\.’) from students;
需要經過兩次轉義,hive才能識別。
究其原因可能是有些特殊字符hive需要轉義,翻譯成hadoop后,hadoop也認為這是一個特殊字符,所以需要再轉一次義才能正常工作。