某段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


标签: SQL, SQL数据

发表评论