【数据库】lateral view explode函数的坑

         之前小白有写过一篇文章是高效的解析字符串,里面讲到过一个方法:lateral view explode

最近小白发现,这个函数在使用时,还是有一些坑的,这里小白做一个总结。

在正常解析一个有值的字符串时,用lateral view explode是完全ok的,但是,当遇到该字符串为空时,如果在使用该函数,就会导致该条记录消失。具体场景如下:

sid filterlist
46 NULL

 

这时,用lateral view explode解析:

select a.sid
	   ,b.filtertype --筛选类型
  	   ,b.filtername --筛选内容
  	   ,b.filtertitle --筛选子类型
  	   ,b.filtersubtype --来源:1搜索;2筛选;3url传参
  	   ,b.filterid --筛选id
from (select sid,filterlist
        from dw_htlbizdb.tmp_hotel_list_bottom01 
	  lateral view explode(split(filterlist,'\\;'))t as flist
     )a
lateral view json_tuple(flist,'filtername') b as
  filtername
  where sid = 49
  ;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值