针对json数组提取
待处理数据[{"id": "123456789", "orgID": "group", "empName": "张三", "empID": "93002", "orgNamePath": "数据中心/高德地图/阿里巴巴"}]
SQL写法
SELECt
get_json_object(
regexp_replace(
regexp_replace(field, '\[', ''),
'\]',
''
) -- 提取json对象,去掉两头的括号[]
, "$.empName"
) -- 提取json键值
from
table
思路:
- 第一步,json数组转为json对象。
- 第二步,利用函数get_json_object处理。
| 序号 | 结果 |
|---|---|
| 1 | 张三 |
| 2 | 李四 |
| 3 | 王五 |
官方文档
https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF#LanguageManualUDF-json_tuple



