Hive内置函数常用类型详解

作者:技术拾光

时间:2026-07-29

浏览:575

Hive内置函数按用途分为字符串、数学、统计、日期、集合、类型转换,含concat、abs、count、current_date、collect_list、cast,满足清洗、计算、聚合、转换需求。

文章目录

做数据开发的朋友都知道,Hive内置函数数量庞大、功能覆盖很广。按用途来分,主要可以归纳为下面几个大类。每个类别里挑几个常用的函数说一下,这样上手会快很多。

Hive内置函数常用类型详解

字符串处理函数

这类函数专门对付字符串数据。比如concat用来拼接两个或多个字符串,substring提取子串,lower和upper分别做小写和大写转换,trim去掉首尾空白——日常的字符串清洗操作基本都能覆盖。

数学函数

提供各种数学运算能力。绝对值用abs,反三角函数有acos、asin、atan,向上取整ceil,向下取整floor,生成随机数用rand。数值计算场景下这些函数非常实用。

统计函数

算统计量是分析里的家常便饭。count数行数,sum求总和,avg算平均值,min和max分别找最小最大值。这几个函数在聚合查询中几乎是必用的。

日期和时间函数

处理日期时间数据也很方便。当前日期用current_date,当前时间戳用current_timestamp;日期加减操作有date_add和date_sub;提取星期几、月份、年份分别用dayofweek、month、year。时间维度分析时这些函数能省不少事。

集合函数

处理数组或集合类型的数据。collect_list把一组值收集成一个数组,collect_set收集成无序集合(自动去重),size计算集合的大小。做聚合后需要对多条记录的值做合并时,这些函数非常好用。

数据类型转换函数

不同数据类型之间切换,用cast可以把表达式转成指定类型;字符串转日期用to_date,转时间戳用to_timestamp。ETL过程中类型转换经常用到,这几个函数得记熟。

其他常用函数

还有一类不方便归入上述大类,但也经常出现。if做条件判断,nullif在满足特定条件时把值变成null,explain则用于查看查询的执行计划——调试SQL时很有用。

当然,上面列出的只是最常用的一部分,Hive还提供了大量其他内置函数。实际使用中,多翻翻官方文档,那里有最完整的函数列表和详细示例,遇到新需求时查一下能省不少摸索的时间。

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章