hive的内置函数

在Hive中,函数包括以下类型:

一、内置函数

1、数学函数

[plain]  view plain  copy
  1. (1)round:四舍五入  
  2.          select round(数值,小数点位数);  
  3. (2)ceil:向上取整  
  4.        select ceil(45.6); --46  
  5. (3)floor:向下取整  
  6.        select floor(45.6); --45  
2、字符函数

[plain]  view plain  copy
  1. (1)lower:转成小写  
  2.      select lower('Hive'); --hive  
  3. (2)upper:转成大写  
  4.      select lower('Hive'); --HIVE  
  5. (3)length:长度  
  6.      select length('Hive'); --4   
  7. (4)concat:拼接字符串  
  8.     select concat('hello','Hive'); --helloHive  
  9. (5)substr:求子串  
  10.      select substr('hive',2); --ive  
  11.      select substr('hive',2,1); --i  
  12.  (6)trim:去掉前后的空格  
  13.          select trim('  hive   '); -hive  
  14.  (7)lpad:左填充  
  15.           对hive填充到10位,补位用#  
  16.     select lpad('hive',10,'#'); --######hive  
  17.  (8)rpad:右填充  
  18.        select rpad('hive',10,'#'); --hive######  
3、收集函数 

[plain]  view plain  copy
  1. select size(map(1,'yy',2,'xx')); --2 map结合的元素个数  
4、转换函数

[plain]  view plain  copy
  1. select cast(1 as float); --1.0  
  2. select cast('2016-05-22' as date); --2016-05-22  
5、日期函数

[plain]  view plain  copy
  1. (1)to_date  
  2.     select to_date('2015-05-22 15:34:23'); --2015-05-22  
  3.  (2)year  
  4.     select year('2015-05-22 15:34:23'); --2015  
  5.  (3)month  
  6.     select month('2015-05-22 15:34:23'); --5  
  7.  (4)day  
  8.     select day('2015-05-22 15:34:23'); --22  
  9.  (5)weekofyear  
  10.     select weekofyear('2015-05-22 15:34:23'); --21  
  11.   (6)datediff  
  12.     select datediff('2015-05-22 15:34:23','2015-05-29 15:34:23'); --[-7]  
  13.  (7)date_add  
  14.     select date_add('2015-05-22 15:34:23',2); --2015-05-24  
  15.  (8)date_sub  
  16.     select date_sub('2015-05-22 15:34:23',2); --2015-05-20  
6、条件函数

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

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

[plain]  view plain  copy
  1. select ename,job,sal,  
  2.            case job when 'president' then sal+100  
  3.             when 'manager'  then sal+800  
  4.             else sal+400  
  5.         end  
  6.     from emp;  

二、聚合函数

[plain]  view plain  copy
  1. (1)count:总数  
  2. (2)sum:和  
  3. (3)max:最大值  
  4. (4)min:最小值  
  5. (5)avg:平均数  
  转换成MR作业

三、表生成函数  

[plain]  view plain  copy
  1. select explode(map(1,'xx',2,'yy',3,'zz'));  
   转换成MR作业,其结果如下

[plain]  view plain  copy
  1. 1   xx  
  2. 2   yy  
  3. 3   zz  
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值