某段SQL中需要去解析一個欄位中的json字串,然而,裡邊的漢字也是編碼後的,存的格式類似

u6e38u620f

SQL語句理論上如下

get_json_object(extends,'$.cate')='u6e38u620f'

但是呢,實際系統執行中涉及到層層編譯過程,反斜線到底該寫幾個才能select出正確的結果呢?

實驗結論如下:

spark-hive>

情況下,輸入兩個反斜線即可

spark-hive> ……get_json_object(extends,'$.cate')='\u6e38\u620f'……

如果使用

spark-hive -e "" > out.txt

方式執行,則需要輸入四個反斜杠

spark-hive -e "……get_json_object(extends,'$.cate')='\\u6e38\\u620f'……" > out.txt


發表評論