str_to_map使用

表字段中jsonStr是一个json格式的字符串,类似于map结构。{"name”:"king", "age":18, "score":99}

使用str_to_map可以转化为map结构。

str_to_map(regexp_replace(regexp_replace(regexp_replace(jsonStr,\",‘‘),\\{,‘‘),\\},‘‘), ,, :) as json_map,

 

如果jsonStr是控制,则需要使用if添加判断

if(jsonStr is null or jsonStr = ‘‘,map(),str_to_map(regexp_replace(regexp_replace(regexp_replace(jsonStr,\",‘‘),\\{,‘‘),\\},‘‘), ,, :)) as json_map,

 针对map结构的解析成多行形式

select pk_day,x_k,x_v
from tmp_b 
lateral view outer explode(json_map) x as x_k,x_v

 

str_to_map使用

上一篇:eclipse-切换分支-用途描述


下一篇:VMware虚拟机Mac OS X安装xcode时出现磁盘空间不足的解决办法