Hive常用内置函数合集

Hive常用内置函数

常用函数列表
函数 用法
round(double a) 近似函数,返回double类型的整数值部分(遵循四舍五入)
round(double a,int b) 指定进度近似函数,返回长整型最近的double值
floor(double a) 向下取整,返回最大的长整型等于或小于double值
ceil(double a) 向上取整,返回最小bigint值等于或大于double
ceiling(double a) 向上取整,返回不小于a的最小整数
rand(),rand(int seed) 返回一个随机数,从行改变到行
size(map<K,V>) 返回在映射类型的元素的数量
size(array) 返回数组流泪记性元素的数量
cast(expr as type) 返回表达式expr转换为type的结果,如果转换不成功就会返回null
日期函数列表
函数 用法
from_unixtime(bigint unixtime,string format) unix时间戳转日期函数,转换的秒数是从1970-01-01 00:00:00 UTC代表的那一刻开始,在当前系统时区的时间戳字符串格式:'1970-01-01 00:00:00',例如,select from_unixtime(15900000000,'yyyy-MM-dd')
unix_timestamp() 获取当前时区的unix时间戳
unix_timestamp(string date) 日期转换unix时间戳函数,转换格式为'yyyy-MM-dd HH:mm:ss'的日期到unix时间戳,若转换失败,则返回null
unix_timestamp(string date,string pattern):转换pattern格式的日期到unix时间戳,例如:select unix_timestamp('20200520 02:40:00','yyyyMMdd HH:mm:ss')
to_date(string timestamp) 日期时间转日期函数,返回一个字符串时间戳的日期部分
year(string date) 日期转年函数,返回日期或时间戳字符串的年份部分
month(string date) 日期转月函数,返回日期或时间戳字符串的月份部分
day(string date) 日期转天函数,返回日期或时间戳字符串的天
hour(string date) 日期转小时函数,返回日期中的小时,int类型
minute(string date) 日期转分钟函数,返回日期中的分钟,int类型
second(string date) 返回日期中的秒,int类型
weekofyear(string date) 日期转周函数,返回日期在该年的周数,int类型
date_diff(string enddate,string startdate) 日期比较函数,返回结束日期减去开始日期的天数,int类型
date_add(string startdate,int days) 返回开始日期startdate增加days天后的日期
date_sub(string startdate,int days) 返回开始日期减少days天后的日期
字符串函数列表
函数 用法
length(string a) 返回字符串啊的长度
reverse(string a) 返回字符串a反转后的结果
concat(string a,string b,...) 返回a串联b产生的字符串,支持任意多个字符串
concat_ws(string sep,string a,string b,...) 返回a,b在sep连接之后的字符串,sep为各个字符串间的分隔符
substr(string a,int start) 字符串截取函数,返回从a的开始位置到结尾的子字符串
substr(string a,int start,int length) 字符串截取函数,返回a字符串从strart位置开始长度为length的子字符串
upper(string a) 返回a字符串中的所有字符的大写字符串
ucase(string a) 返回a字符串中的所有字符的大写字符串
lower(string a) 返回a字符串中所有字符的小写字符串
lcase(string a) 返回a字符串中所有字符的小写字符串
trim(string a) 返回去掉a字符串中所有的空格的字符串
ltrim(string a) 返回去掉字符串a左侧的所有空格的字符串
rtrim(string a) 返回去掉字符串右侧的所有空格的字符串
regexp_replace(string a,string b,string c) 返回c替换字符串a中所有b子字符串的结果
space(int n) 返回长度为n的空字符串
repeat(string str,int n) 重复字符串函数,返回重复n次后的str字符串
asccii(string str) 首字符asccii函数,返回字符串str第一个字符的asccii码
Ipad(string str,int len,string pad) 左补足函数,将str用pad进行左补足到len位
rpad(string str,int len,string pad) 右补足函数,将str用pad进行右补足到len位
split(string str,string pat) 按照pat字符串分割str,会返回分割后的字符串数组
find_in_set(string str,string strList) 返回str在strlist第一次出现的位置,strlist是用逗号分割的字符串集合,没有找到就返回0
聚合函数列表
函数 用法
count(*),count(expr) , 返回检索的行的个数
sum(col),sum(distinct col) 返回该列或该列的不同元素的总和
avg(col),avg(distinct col) 返回列或该列不同元素的平均值
min(col) 返回该列中的最小值
max(col) 返回该列中的最大值
条件判断函数列表
函数 用法
if(testcondition,T value,F value) 判断条件只有两种结果时,可以使用if,如果为ture就返回T值,如果为False就返回F值
coalesce(T v1,T v2,...) 非空查找函数,返回参数中第1个非空值,如果所有值都为null,那么返回null
case condition when a then b when c then d else e end 多条件判断
相关推荐
tianhuo0031 天前
从MySQL到Apache Doris:生鲜供应链数仓的ETL流水线与SARIMA需求预测全实
数据仓库·数据中台·零售行业供应链数字化
SendTomo1 天前
.ico透明图标在线生成下载平台深度解析
大数据·数据结构·数据库·数据仓库·个人开发
qingwufeiyang_5302 天前
IceBerg学习笔记2
数据仓库·数据湖
Gl�ria3 天前
Hive SQL 执行卡住完整排查 & 处理
hive·hadoop·sql
学代码的CJY4 天前
CJY 知识工作台:博客写作使用指南
数据仓库·知识图谱
喻师傅4 天前
Apache Hudi 概述:从 Parquet 更新难题到数据湖 Upsert
大数据·数据仓库·big data
网络豆5 天前
Apache Hive 鸿蒙 PC 适配全记录:以 Qt 客户端打通 HiveQL、监控与元数据访问
hive·apache·harmonyos
fastjson_6 天前
Hive3.1.3 安装使用
hive
宽海智能仓储物流7 天前
航发自动化立体库异构系统改造:宽海智能30天联调技术全解析
运维·数据仓库·自动化
程序员小羊!8 天前
医疗数据仓库ODS层敏感信息防护实战:7大关键策略
数据仓库