日期/时间函数

函数描述
add_months在日期中添加月份
date_add在日期中添加天数
date_format修改日期格式
date_sub从日期减去天数
date_trunc返回截断为指定单位的日期
datediff返回日期之间的天数差
daydayofmonth返回月中日
dayofweek返回星期几(1-7)
dayofyear返回年中哪天
from_unixtime以UNIX®时间返回日期
from_utc_timestamp以UTC时间返回日期
hour返回输入的小时数
last_day返回日期所属月份的最后一天
minute返回输入的分钟数
month返回输入的月份
months_between月数介于
next_day返回比输入晚的第一天
quarter返回输入的季度
second返回字符串的秒数
to_date将字符串转换为日期。 注意: ​字符串​ 必须 ​的格式为yyyy-mm-ddTHH24:MM:SS
to_timestamp将字符串转换为时间戳。 注意: ​字符串​ 必须 ​的格式为yyyy-mm-ddTHH24:MM:SS
to_unix_timestamp将字符串转换为UNIX®时间戳
to_utc_timestamp将字符串转换为UTC时间戳
trunc截断日期
unix_timestamp返回UNIX®时间戳
weekday星期几(0-6)
weekofyear返回给定日期在一年中的哪一周
year返回字符串的年份

数组

函数描述
array创建具有给定元素的数组
array_contains检查数组是否包含值
array_distinct从数组中删除重复的值
array_except返回第一个数组中元素的数组,但不返回第二个数组中的元素数组
array_intersect返回两个数组的交集
array_join将两个数组连接在一起
array_max返回数组的最大值
array_min返回数组的最小值
array_position返回元素从1开始的位置
array_remove删除与该元素相等的所有元素
array_repeat创建一个包含已计数次数的值的数组
array_sort对数组排序
array_union将数组连接在一起,没有任何重复项
arrays_zip将给定数组的值与给定索引处的原始集合的值组合在一起
cardinality返回数组的大小
element_at返回位置的元素
explode将数组的元素分隔为多行,不包括null
explode_outer将数组的元素分隔为多个行,包括null
find_in_set返回数组的从1开始的位置
flatten拼合阵列阵列
inline将结构数组分隔到表中,不包括null
inline_outer将结构数组分隔到表中,包括空值
posexplode将数组的元素分隔为多个具有位置的行,但不包括null
reverse反转数组的元素
shuffle返回数组的随机置换
slice将数组设为子集
sort_array按顺序对数组排序
zip_with在应用函数之前,将两个数组合并到单个数组中

数据类型转换函数

函数描述
bigint将数据类型更改为bigint
binary将数据类型更改为二进制
boolean将数据类型更改为布尔值
type将数据类型更改为指定的类型
date将数据类型更改为日期
decimal将数据类型更改为小数
double将数据类型更改为双精度类型
float将数据类型更改为浮点数
int将数据类型更改为int
smallint将数据类型更改为smallint
str_to_map从字符串创建映射
string将数据类型更改为字符串
struct创建结构
tinyint将数据类型更改为tinyint

转换和格式化函数

函数描述
ascii返回数字(ASCII)值
base64将参数更改为base64字符串
bin将参数更改为二进制值
bit_length返回位长度
charchr返回ASCII字符
char_lengthcharacter_length返回字符串长度
crc32返回循环冗余检查值
degrees将弧度转换为度
format_number更改号码的格式
from_jsonget_json_object从JSON获取数据
hash返回哈希值
hex将参数转换为十六进制值
initcap将字符串更改为字首大写
lcaselower将字符串更改为全部小写
lpad垫住线条的左侧
map创建映射
map_from_arrays从数组创建映射
map_from_entries从结构数组创建映射
md5返回md5值
rpad垫住线条的右侧
rtrim删除尾随空格
shasha1返回SHA1值
sha2返回SHA2值
soundex返回soundex代码
stack将值分隔为行
substrsubstring返回子字符串
to_json返回JSON字符串
translate替换字符串中的值
trim删除前导和尾随字符
ucaseupper将字符串更改为全部大写
unbase64将base64字符串转换为二进制
unhex将十六进制转换为二进制
uuid返回UUID

数据评估

函数描述
coalesce返回第一个非空参数
collect_list返回非唯一元素的列表
collect_set返回一组唯一元素
concat串联
concat_ws与分隔符连接
count返回行的总计数
decode使用字符集解码
elt返回第n个输入
encode使用字符集进行编码
firstfirst_value返回第一个值
grouping指示列是否已分组
grouping_id返回分组级别
instr返回从1开始的字符出现索引
json_tuple从JSON输入返回元组
laglead返回偏移之前的值
lastlast_value返回最后一个值
left返回前n个字符
length返回字符串的长度
levenshtein返回字符串之间的列文氏距离
locateposition返回子字符串第一次出现的位置
map_concat连接映射
map_keys返回映射的键
map_values返回映射的值
ntile将行划分为分区
nullif如果为true,则返回空值
nvl如果为null,则返回值
nvl2如果不是null,则返回值
parse_url提取URL的一部分
rank计算值的排名
regexp_extract提取与正则表达式匹配的内容
regex_replace替换匹配正则表达式的内容
repeat返回重复的字符串
replace替换字符串的所有实例
rollup创建多维度汇总
row_number分配唯一的行号
schema_of_json返回JSON的架构
sentences将字符串拆分为单词数组
sequence生成元素数组
shiftleft带符号的左位移位
shiftright带符号的右位偏移
shiftrightunsigned无符号位右移
size返回数组的大小
space返回包含n个空格的字符串
split拆分字符串
substring_index返回子字符串的索引
window窗口
xpath解析XML节点
xpath_doublexpath_number解析XML节点以获取双精度类型
xpath_float解析浮点的XML节点
xpath_int解析XML节点的整数
xpath_long长时间解析XML节点
xpath_short分析短整数的XML节点
xpath_string解析字符串的XML节点