leteral view explode 和posexplode的区别

hive> select *from hanga;
OK
	a		b
104399	1715131_2105395_1758844_981085_2444143_1458638_968412
104400	1609001_2986088_1795054

		explode的用法是将b列按照_切完之后炸裂,然后选择要炸裂出来的列
hive> select a,pos from hanga lateral view explode(split(b,'_')) t as pos ;
OK
  a       pos
104399	1715131
104399	2105395
104399	1758844
104399	981085
104399	2444143
104399	1458638
104399	968412
104400	1609001
104400	2986088
104400	1795054



posexplode的用法是将b列按照_切完之后炸裂,会比explode多出一列序号列 pos,
hive> select a,pos,tos from hanga lateral view posexplode(split(b,'_')) t as pos,tos ;
OK
  a    pos   tos	
104399	0	1715131
104399	1	2105395
104399	2	1758844
104399	3	981085
104399	4	2444143
104399	5	1458638
104399	6	968412
104400	0	1609001
104400	1	2986088
104400	2	1795054
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值