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 多条件判断
相关推荐
哥本哈士奇4 小时前
dbt+SQLServer构建数据仓库(4):分层建模实战
数据仓库·sqlserver
l1t1 天前
kryonix提交的DuckDB 统一并优化标量执行器基础设施 - #24564 PR
开发语言·数据库·数据仓库·sql
ZCBUS实时计算2 天前
政务海量分库分表汇聚实战:基于 3 节点 ZCBUS 集群完成医保 10TB 数据实时整合
大数据·数据库·数据仓库·sql·dba·etl·政务
William Dawson3 天前
【踩坑实录|Hive1\.2\.1数据服务接口5大疑难问题调试与全方位优化方案】
java·hive·spring boot
hopsky3 天前
数据架构与商业智能
数据仓库·bi
APItesterCris5 天前
Open Claw 实战教程:5 分钟搭建京东商品自动化监控与数据分析系统
大数据·运维·数据库·数据仓库·自动化
RestCloud7 天前
ETL、ELT、CDC区别详解,2026数据集成模式选型指南与落地实战
数据仓库·etl·cdc·数据同步·数据集成平台·实时数据同步·elt
江晓鱼未暖7 天前
十七、Redis 核心原理与架构详解
大数据·数据库·数据仓库·redis·缓存·架构
l1t7 天前
DeepSeek总结的上下文理应归属于数据仓库
数据仓库
牛奶咖啡1310 天前
大数据Hadoop运维应用实践——HIVE与Hadoop实现整合_Hive的配置安装与使用
大数据·hive·hive的配置与安装·metastore服务的配置·hiveserver2服务配置·hive的常用sql操作·beeline的使用