本文主要是介绍走近大数据之Hive进阶(三、Hive的内置函数),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
目录
一、Hive数学函数
二、Hive字符函数
三、Hive收集函数和转换函数
四、Hive日期函数
五、Hive条件函数
六、Hive聚合函数和表生成函数
一、Hive数学函数
round 四舍五入 前面是小数,后面是取整位数
ceil 向上取整
floor 向下取整
二、Hive字符函数
字符串转换成小写:lower
字符串转换成大写:upper
>select lower('Hello World'), upper('Hello Hive');
字符串长度(字符数):length
>select length('Hello World'), length('你好'); //'你好'的字符数为2,字节数为4
拼接字符串:concat
>select concat('Hello', ' World');
求字符串的子串:substr
//substr(a, b)从a中第b位开始取,取右边所有字符
>select substr('Hello World', 3);
//substr(a, b, c) 从a中,第b位开始取,取c个字符
>select substr('Hello World', 3, 4);
去掉字符串前后的空格:trim
左填充:lpad
右填充:rpad
>select lpad('abcd', 10, '*'); //表示用*左填充'abcd'到10位
>select rpad('abcd', 10, '*'); //表示用*右填充'abcd'到10位
运行结果:
三、Hive收集函数和转换函数
收集函数 size 统计数据类型的长度
转换函数 cast 数据类型的转换
四、Hive日期函数
to_date 返回标准日期
year 返回日期中的年
month 返回日期中的月
day 返回日期中的天
weekofyear 返回该日期在一年中的第几周
datediff 返回两个日期的相差的天数
date_add 在当前日期的基础上,加上天数,并返回
date_sub 在当前日期的基础上,减去天数,并返回
五、Hive条件函数
从左到右返回第一个不为null的值:coalesce
条件表达式:case...when...
CASE a WHEN b THEN c [WHEN d THEN e]* [ELSE f] END
//如果a的值等于b时返回c,如果等于d返回e,等等等等,最后如果都不是返回f
六、Hive聚合函数和表生成函数
1、聚合函数
count 求总数
sum 求和
min 求最小值
max 求最大值
avg 求平均值
select count(*), sum(sal), max(sal), min(sal), avg(sal) ;
2、表生成函数
表生成函数 -explode 将每个key-value数据都转换成一行
select explode(map(1,'tom',2,'mary',3,'mike'));
Result: -----------
1 Tom
2 Mary
3 Mike
这篇关于走近大数据之Hive进阶(三、Hive的内置函数)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!