1、laterval view 常 和 explode 一起使用用来进行行转列 (单个字段中有多个指定分隔符的字段)
explode 函数我称它为爆炸函数,可以将单个字段中有多个指定分隔符的字
1、比如以下这个 array 这个 例子
| array |
|---|
| [10,20,30,40,50] |
select explode(array) from tb
结果如下
| array |
|---|
| 10 |
| 20 |
| 30 |
| 40 |
| 50 |
2、炸开 map 的例子
| id | cnt |
|---|---|
| 1 | [A,B,C] |
| 2 | [D,E,F] |
用函数 select id,newcnt from tb
lateral view explode (cnt) as newcnt ;
炸开之后的结果是
| id | cnt |
|---|---|
| 1 | A |
| 1 | B |
| 1 | C |
| 2 | D |
| 2 | E |
| 2 | F |
备注:炸裂之后,要起别名
本文介绍了如何在LatentView中使用explode函数将单字段的多值数据拆分成行,以处理数组和map数据。通过实例展示了如何对ID-CNT组合进行拆分,并生成新的行数据。

745

被折叠的 条评论
为什么被折叠?



