hive常用函数

hive函数

hive中函数有如下类型:
- 数学函数
- 字符函数
- 收集函数
- *转换函数
- 日期函数
- 条件函数
- 聚合函数
- 表生成函数


数学函数

(1)round:四舍五入
         select round(数值,小数点位数);
(2)ceil:向上取整
       select ceil(45.6); --46
(3)floor:向下取整
       select floor(45.6); --45

字符函数

(1)lower:转成小写
     select lower('Hive'); --hive
(2)upper:转成大写
     select lower('Hive'); --HIVE
(3)length:长度
     select length('Hive'); --4 
(4)concat:拼接字符串
    select concat('hello','Hive'); --helloHive
(5)substr:求子串
     select substr('hive',2); --ive
     select substr('hive',2,1); --i
 (6)trim:去掉前后的空格
         select trim('  hive   '); -hive
 (7)lpad:左填充
          对hive填充到10位,补位用#
    select lpad('hive',10,'#'); --######hive
 (8)rpad:右填充
       select rpad('hive',10,'#'); --hive######

收集函数

select size(map(1,'yy',2,'xx')); --2 map结合的元素个数

转换函数

select cast(1 as float); --1.0
select cast('2016-05-22' as date); --2016-05-22

日期函数

(1)to_date
    select to_date('2015-05-22 15:34:23'); --2015-05-22
 (2)year
    select year('2015-05-22 15:34:23'); --2015
 (3)month
    select month('2015-05-22 15:34:23'); --5
 (4)day
    select day('2015-05-22 15:34:23'); --22
 (5)weekofyear
    select weekofyear('2015-05-22 15:34:23'); --21
  (6)datediff
    select datediff('2015-05-22 15:34:23','2015-05-29 15:34:23'); --[-7]
 (7)date_add
    select date_add('2015-05-22 15:34:23',2); --2015-05-24
 (8)date_sub
    select date_sub('2015-05-22 15:34:23',2); --2015-05-20

条件函数

select ename,job,sal,
           case job when 'president' then sal+100
            when 'manager'  then sal+800
            else sal+400
        end
    from emp;

聚合函数

1)count:总数
(2sum:和
(3max:最大值
(4min:最小值
(5avg:平均数

表生成函数

select explode(map(1,'xx',2,'yy',3,'zz'));

你可能感兴趣的:(hive与SQL的暧昧)