栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

Hive的split,explode和lateral view(保姆级教程)

Hive的split,explode和lateral view(保姆级教程)

split函数:

split函数:分割字符串,返回值是array
使用desc function split命令查看hive中的split的使用的基本语法。

split函数根据regex来截取字符串,regex是正则表达式。

具体使用:select split(str,',') from student;
split返回值是array,经常搭配explode使用,select explode(split(str,',')) from student;

explode函数和lateral view:

explode函数:将hive中的一列中复杂的array或者map分成多行。
功能:列转行。
使用desc function explode命令查看hive中的split的使用的基本语法。

机翻:将数组的元素分隔为多行,或将贴图的元素分隔为多行和多列。
具体使用:select explode(split(str,',')) from student;
lateral view:侧视图配合explode,一个语句生成把单行数据拆解成多行后的数据结果集。

具体使用:

create table if not exists employee(
	name string,
	work_place array,
	gender_age struct,
	skills_score map,
	depart_title map>
)
comment 'this is an internal table'
row format delimited fields terminated by '|'
collection items terminated by ','
map keys terminated by ':'
lines terminated by 'n';

select name,skill,score from employee lateral view explode(skills_score) sk_sc as skill,score;

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/487213.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号