Hive 常用函数整理
目录
Hive 一、常用日期函数
- unix_timestamp:返回当前或指定时间的时间戳
select unix_timestamp();
select unix_timestamp(“2022-10-28”,’yyyy-MM-dd’); - from_unixtime:将时间戳转为日期格式
select from_unixtime(1603843200); - current_date:当前日期
select current_date; - current_timestamp:当前的日期加时间
select current_timestamp; - to_date:抽取日期部分
select to_date(‘2022-10-28 12:12:12’); - year:获取年
select year(‘2022-10-28 12:12:12’); - month:获取月
select month(‘2022-10-28 12:12:12’); - day:获取日
select day(‘2022-10-28 12:12:12’); - hour:获取时
select hour(‘2022-10-28 12:13:14’); - minute:获取分
select minute(‘2022-10-28 12:13:14’); - second:获取秒
select second(‘2022-10-28 12:13:14’); - weekofyear:当前时间是一年中的第几周
select weekofyear(‘2022-10-28 12:12:12’); - dayofmonth:当前时间是一个月中的第几天
select dayofmonth(‘2022-10-28 12:12:12’); - months_between: 两个日期间的月份
select months_between(‘2022-04-01′,’2022-10-28’); - add_months:日期加减月
select add_months(‘2022-10-28’,-3); - datediff:两个日期相差的天数
select datediff(‘2022-11-04′,’2022-10-28’); - date_add:日期加天数
select date_add(‘2022-10-28’,4); - date_sub:日期减天数
select date_sub(‘2022-10-28’,-4); - last_day:日期的当月的最后一天
select last_day(‘2022-02-30’); - date_format(): 格式化日期
select date_format(‘2022-10-28 12:12:12′,’yyyy/MM/dd HH:mm:ss’);
二、常用取整函数
- round:四舍五入
select round(3.14);
select round(3.54); - ceil:向上取整
select ceil(3.14);
select ceil(3.54); - floor:向下取整
select floor(3.14);
select floor(3.54);
三、常用字符串操作函数
- upper:转大写
select upper(‘low’); - lower:转小写
select lower(‘low’); - length:长度
select length(“hadoop”); - trim:前后去空格
select trim(” hadoop “); - lpad: 向左补齐,到指定长度
select lpad(‘hadoop’,9,’g’); - rpad:向右补齐,到指定长度
select rpad(‘hadoop’,9,’g’); - regexp_replace:使用正则表达式匹配目标字符串,匹配成功后替换!
SELECT regexp_replace(‘2022/10/25’, ‘/’, ‘-‘);
四、集合操作
- size:集合中元素的个数
select size(friends) from test3; - map_keys:返回map中的key
select map_keys(children) from test3; - map_values:返回map中的value
select map_values(children) from test3; - array_contains:判断array中是否包含某个元素
select array_contains(friends,’bingbing’) from test3; - sort_array:将array中的元素排序
select sort_array(friends) from test3;
五、多维分析