hive---常用内置函数总结



数学函数:

round(四舍五入):


ceil(向上取整):


floor(向下取整):

上面的结果变为45


字符函数:

lower(转小写):

upper(转大写):


length(字符串长度,字符数):


concat(字符串拼接):


substr(求子串):

substr(a,b):从字符串a中,第b位开始取,取右边所有的字符

substr(a,b,c):从字符串a中,第b为开始取,取c个字符

注意:空格算占用一个字符的空间


trim(去前后空格):


lpad(左填充):

rpad(右填充):



收集函数:

size:返回map集合的个数

格式:size(map(<key,value>,<key,value>))



转换函数:

cast:转换数据类型




日期函数:

to_date:从一个字符串中取出为日期的部分


year、month、day:从一个日期中取出相应的年、月、日


weekofyear:返回输入日期在该年中是第几个星期


datediff:两个日期相减,返回相差天数


date_add:在一个日期基础上增加天数

date_sub:在一个日期基础上减去天数



条件函数:

coalesce:从左到右返回第一个不为null的值


case...when...:条件表达式

语法格式:case A when B then C [when D then E]* [else F] end

解释:对于A来说,如果判断为B则返回C,如果判断为D则返回E(此处判断条件可为多个),如果以上都不是则返回F。注意,最后还有还有一个end结束符。


运行结果:



聚合函数:

count:返回行数

sum:组内某列求和

min:组内某列最小值

max:组内某列最大值

avg:组内某列平均值

以工资sal为例:

select count(*),sum(sal),max(sal),min(sal),avg(sal) from emp;


表生成函数:

explode:把map集合中每个键值对或数组中的每个元素都单独生成一行的形式



猜你喜欢

转载自blog.csdn.net/liu123641191/article/details/80845411