hive内置函数

--查询hive的内置函数列表

show functions;

--查询具体函数的使用描述

desc function extended 函数名

desc function extended current_database;

一.字符串函数

1.字符串的拆分 :split();

select split('hello,java;hi,bigdata','[,;]');

[ ]内可以写多个分隔符

----获取字符串拆分后的元素

--通过数组下标获取元素

select split('hello,java;hi,bigdata','[,;]') [0];

2.字符串的拼接:concat()

select concat('abc','def');

--根据指定的分隔符拼接字符串: concat_ws()

concat_ws(sep,str2,str3)

select concat_ws('.','www','baidu','com');

3.字符串的截取 : substr()

//字符串的起始索引位置为1,从索引位置为5的字符开始截取 到字符串的结尾

select substr('facebook',5); ---book

如果截取的起始索引位置为负数,表示从字符串的末尾位置开始 向前找到索引位置

select substr('facebook',-5);

从索引位置为5的字符开始截取,j截取长度为2

select substr('facebook',5,2); --bo

substring()与substr()函数一致

4.查询指定字符串出现的位置:instr()

**--instr(str,substr):**在字符串str中查找substr首次出现的索引位置,如果不存在则返回0

select instr('facebook','b');

5.获取字符串的长度:length()

select length ('facebook');

6.将字符串的字母转换大写 upper

select upper('min')

7.将大写字母转换成小写 lower()

select lower('MAX')

8.去除字符串前后的空格:trim()

select trim(' strin g ');

--ltrim():去除字符串左侧的空格

--rtrim():去除字符串右侧的空格

9.对字符串进行替换:regexp_replace()

--string regexp_replace(str,正则表达式,replaceStr):将字符串中符合正则表达式的字符串替换

select regexp_replace('foobar','oo|ar',''); --fb

10.对于json字符串进行元素提取:get_json_object()

二.类型转换函数:cast()

--newtype cast(attr as newtype): 将字符串attr转换成newtype类型

--将字符串1转换成double类型

newtype cast('1' as double)

三.数值函数

1.对浮点数进行四舍五入:round()

根据浮点数中的小数第一位进行四舍五入,返回一个整数

select round(12.3456); ---12

select round(12.789); ---13

--返回浮点数的指定小数位置,进行四舍五入后的值

select round(12.3456,1);

2.对浮点数进行向下取整:floor()

select floor(1.1); --1

select floor(1.9); --1

select floor(-1,9); -- -2

3.对浮点数进行向上取整:ceil()

select cail(1.1); --2

select ceil(-1.9) -- -1

4.获取数值的绝对值:abs()

select abs(-1.1); -- 1.1

5.获取一个随机数 :rand()

--获取一个0-1之间的随机数

select rand();

--输入一个种子数如果种子数固定则获取的浮点随机数也是固定的

select rand(种子数);

四.聚合函数

sum()

count()

max()

min()

avg()

相关推荐
CHICX122919 分钟前
【Hadoop】改一下core-site.xml和hdfs-site.xml配置就可以访问Web UI
xml·大数据·hadoop
极客先躯8 小时前
Hadoop krb5.conf 配置详解
大数据·hadoop·分布式·kerberos·krb5.conf·认证系统
BD_Marathon14 小时前
设置hive本地模式
数据仓库·hive·hadoop
Data 31714 小时前
Hive数仓操作(十一)
大数据·数据库·数据仓库·hive·hadoop
Data 31717 小时前
Hive数仓操作(九)
大数据·数据仓库·hive·hadoop
晚睡早起₍˄·͈༝·͈˄*₎◞ ̑̑17 小时前
JavaWeb(二)
java·数据仓库·hive·hadoop·maven
朗朗乾坤.py19 小时前
Hadoop HDFS命令操作实例
hadoop·hdfs·npm
杰哥在此19 小时前
Python知识点:如何使用Hadoop与Python进行大数据处理
开发语言·hadoop·python·面试·编程
Data 31721 小时前
Hive数仓操作(三)
大数据·数据库·数据仓库·hive·hadoop