传送门

前言

在做hive相关练习时,遇到这个看不懂。lateral view explode(category) t_catetory as category_name
理解:category可以是hive的集合数据类型,如array([1030,1031,1032,1033,1190] )、map( 数学:80,语文:89,英语:95)t_catetory as category_name,想要通过as给一个别名(反映在结果的列名中,方便查看)

一、explode()

explode()可以接受一个数组(或者一个map)作为输入,并将数组元素(或map)作为单独的输出。

二·、lateral view

lateral view的意义是配合explode,一个语句生成把单行数据拆解成多行后的数据结果集。