hive中,炸裂函数有两个explode 和posexplode
都是可以把数组类型或map类型的字段拆分成多行,属于udtf函数。
也可以配合split函数使用。
lateral view侧写函数
只要是想查询除exlpode之外的字段就要使用侧写函数lateral view;
posexplode 是在explode 的基础上多生成一列索引列,索引从0开始,
用法如下:
select dept_id,name,idx,col from sys_dept lateral view posexplode(split(path,'/')) v as idx, col select dept_id,name,col from sys_dept lateral view explode(split(path,'/')) v as col
最后结果可自行测试,我这边就不写了
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)