Hive常用Api
一、Hive 支持原始数据类型和复杂数据类型, 原始数据类型包含数值型/Boolean/字符串/时间戳,复杂数据类型包含 map/struct/array/union
Hive 支持的原始数据类型
二、日期互转
string 数据文本 转 yyyy-mm-dd
语法:to_date(from_unixtime(UNIX_TIMESTAMP(dt,’数据文本’)))
三、解析json数据
1、explode函数
语法:explode(Array|Map)
举例:
select explode(array('user_id','name','age'));
select explode(map('user_id',1,'name','rocky','age',18));
2、regexp_replace函数
语法:regexp_replace(str A, str B, str C)
举例:
select regexp_replace('hello world!', '\\ |\\!', '');
3、 lateral view函数
说明:
lateral view 用于和 split, explode 等 UDTF 一起使用,它能够将一列数据拆成多行数据,在此基础上可以对拆分后的数据进行聚合。
lateral view 首先为原始表的每行调用 UDTF,UDTF 会把一行拆分成一行或者多行,lateral view 在把结果组合,产生一个支持别名表的虚拟表。
语法: select 字段,字段别名 from table_name lateral view explode(split(拆分字段,分隔符))表别名 as 字段别名;