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()

相关推荐
三生暮雨渡瀟瀟2 小时前
解决HiveSQL查询出现Java.lang.OutMemoryError.java heap space
hive
B站计算机毕业设计超人11 小时前
计算机毕业设计hadoop+spark股票基金推荐系统 股票基金预测系统 股票基金可视化系统 股票基金数据分析 股票基金大数据 股票基金爬虫
大数据·hadoop·python·spark·课程设计·数据可视化·推荐算法
viperrrrrrrrrr719 小时前
大数据学习(36)- Hive和YARN
大数据·hive·学习
重生之Java再爱我一次1 天前
Hive部署
数据仓库·hive·hadoop
想做富婆1 天前
大数据,Hadoop,HDFS的简单介绍
大数据·hadoop·分布式
WorkAgent1 天前
windows下本地部署安装hadoop+scala+spark-【不需要虚拟机】
hadoop·spark·scala
JZC_xiaozhong1 天前
低空经济中的数据孤岛难题,KPaaS如何破局?
大数据·运维·数据仓库·安全·ci/cd·数据分析·数据库管理员
村口蹲点的阿三1 天前
Spark SQL 中对 Map 类型的操作函数
javascript·数据库·hive·sql·spark
重生之Java再爱我一次2 天前
Hadoop集群搭建
大数据·hadoop·分布式