-- | 1110 | [{"content":"全部内容。" }, { "content":"无其它特别约定。"}] |

select id,concat_ws('||',collect_set(content)) as contents from (
 select id, get_json_object(cl,'$.content') as content from (
 select id, split(regexp_replace( regexp_extract (property_value ,'(\\[)(.*?)(\\])',2) ,'},{','}|{'),'\\|') as property_value 
from  properties where pt='20180627000000'  and property_key ='specail'  limit 1 ) b 
 lateral view explode(property_value) tf as cl

) b group by id ;

结果 :

+-------------------+----------+

| id | contents |
+-------------------+----------+
| 1110 | 全部内容。||无其它特别约定。 |

+-------------------+----------+

具体步骤说明:

1。 抽取树组 中的json

2。 替换json分割符 为|

3。split()

4。lateral view explode(property_value)  列转行

5。行转列

是不是要疯了:好端端的一个树组 ,然后这么复杂才解析出来 ,并抽取出里面的字段 。

如果 property_value 以数组的形式存储 ,可以省掉前三步骤。

hive string 转数组:抽取数组中的key 然后列转行相关推荐

  1. js判断数组或对象中的key是否存在

    JS中数组和对象是等同的,判断一个key是否存在于数组中(或对象是否包含某个属性),我们可能马上想到的是使用ary[key] == undefined来判断key是否存在这个数组或者是对象中,但是这样 ...

  2. Hive常用函数、列转行与行转列、开窗函数、UDF、UDTF

    Hive函数.开窗函数.UDF.UDTF 1.系统内置函数 2.常用函数 2.1.关系运算 2.2.数值运算 2.3.条件函数 2.4.日期函数 2.5.字符串函数 2.6.Hive求WordCoun ...

  3. java arraylist与数组转换_java中String,数组,ArrayList三者之间的转换

    免费资源网 - https://freexyz.cn/ ArrayList转为String和数组 造一个元素为Integer的ArrayList 为list_int 造一个元素为String 的 Ar ...

  4. JavaScript中的Date日期、String字符串、Array数组、Math提供对数据的数学计算

    一.Date 日期对象 日期对象可以储存任意一个日期,并且可以精确到毫秒数(1/1000 秒). 定义一个时间对象 : var Udate=new Date(); 注意:使用关键字new,Date() ...

  5. java字符串数组转json_java中字符串String格式转化成json格式

    java字符串数组转json_java中字符串String格式转化成json格式 String s= Connection.deleteHost("10310");System.o ...

  6. string类转数组 java_将java中的 string 类型转成 数组案例

    这个要看你的具体需求了.如果是有分隔符的那种例如"a,b,c";就直接分割就行了. String string = "a,b,c"; String [] str ...

  7. java char数组转string数组_Java中char数组(字符数组)与字符串String类型的转换方法...

    本文实例讲述了Java中char数组(字符数组)与字符串String类型的转换方法.分享给大家供大家参考,具体如下: 在Java语言编程时,使用"口令字段"jPasswordFie ...

  8. C++中std::string与C-String字符数组的互相转换

    C语言中只有字符数组这一说法,没有C++专门封装的字符串类std::string.而字符数组C-String以\0作为结束符.std::string其实还是存储了C-String这个指针,只不过不同的 ...

  9. String,char,数组,列表 相互转化 (更新中)

    字符串转字符数组 "abcdefg".toCharArray() 数组转List Arrays.asList(数组); List转数组 ArrayList<String> ...

最新文章

  1. graphpad做折线图后怎么保存_农村的干豆角怎么做的?农村妹子教你两个窍门,保存2年都不会坏...
  2. 微软发布新的Azure Pipelines功能和集成
  3. 视口和窗口的理解方法
  4. 【Avalon】Avalon笔记(解析Dom模板树,按自己的规范)
  5. 执行execute时对象名 retime_record 无效_MyBatis 的执行流程怎么可以讲的这么透彻
  6. 【英语学习】【WOTD】sentient 释义/词源/示例
  7. yum mysql my.ini_Centos7 yum安装mysql
  8. 读懂 SOLID 的「里氏替换」原则
  9. 关于IAP:测试时能获取产品价格,却不能获取产品名称的问题
  10. wxpython 调用子窗口_wxpython简介
  11. <算法导论>练习4.3
  12. 小米路由器3开启千兆_使用评测 篇三:家庭网络进入千兆时代—小米路由器4开箱及评测...
  13. 企业如何自建MDM 移动设备管理平台
  14. 星际争霸2的移动机制-初探
  15. Android Espresso(四)——RecyclerView
  16. Nat Commun:中国中医科学院黄璐琦院士/首都医科大学高伟教授团队联合解析雷公藤甲素生物合成关键C-14位羟化机制...
  17. 微信小程序开发实战(13):图像组件(image)
  18. C语言中,头文件和源文件的关系(转)
  19. CAD中插入外部参照字体会变繁体_为什么CAD插入相同图框但尺寸却相差很多?
  20. Infortrend与英方合作推出存储灾备一体化解决方案

热门文章

  1. java数组释放内存空间,Java中数组的内存分析
  2. 滴滴高级专家工程师保姆级运维监控科普(二)
  3. java操作office套件-了解文档
  4. java异步 @Async
  5. 将1-9分成三组,组成三个三位数,构成1:2:3的比例
  6. SQL server查询变动积分和当前积分
  7. 20面试官21-04-17
  8. java继承和接口的区别_继承和实现接口的区别
  9. java 线程(二)线程常用方法
  10. 全排列引发的Set与Map与数组的思考【递归,map与set数据结构】