问题背景及要求:
表中有一字段存在形如[a,b,c,...]的若干记录,要求按照','分隔符将字段拆解,并转换为多行
举例说明:
id | 待拆解字段 |
1 | [a,b,c] |
2 | [d,e] |
id | 带拆解字段 | 新字段 |
1 | [a,b,c] | a |
1 | [a,b,c] | b |
1 | [a,b,c] | c |
2 | [d,e] | d |
2 | [d,e] | e |
hive实现:
select *
from 库.表
lateral view explode(split(regexp_replace(待拆解字段,'\\[|\\]',''), ',')) tmp1 as 新字段
补充说明: