【无标题】

Spark SQL 函数分类导航

不知道用哪个函数?按场景找 👇

点击函数名跳转到详细用法页面


🔍 快速定位指南

我想... 去看
拼接/截取/替换字符串 [字符串函数](#我想… 去看 拼接/截取/替换字符串 字符串函数 日期加减/格式化/提取 日期时间函数 求和/计数/平均/统计 聚合函数 排名/取前后行/累计 窗口函数 IF/CASE/处理NULL 条件与控制函数 类型互转 类型转换函数 操作数组/Map 集合函数 解析/生成JSON JSON 函数 加密/哈希/UUID 加密与哈希函数 数组转多行 展开函数 数学计算/三角函数 数学函数 解析URL/XML URL函数 / XML函数)
日期加减/格式化/提取 [日期时间函数](#我想… 去看 拼接/截取/替换字符串 字符串函数 日期加减/格式化/提取 日期时间函数 求和/计数/平均/统计 聚合函数 排名/取前后行/累计 窗口函数 IF/CASE/处理NULL 条件与控制函数 类型互转 类型转换函数 操作数组/Map 集合函数 解析/生成JSON JSON 函数 加密/哈希/UUID 加密与哈希函数 数组转多行 展开函数 数学计算/三角函数 数学函数 解析URL/XML URL函数 / XML函数)
求和/计数/平均/统计 [聚合函数](#我想… 去看 拼接/截取/替换字符串 字符串函数 日期加减/格式化/提取 日期时间函数 求和/计数/平均/统计 聚合函数 排名/取前后行/累计 窗口函数 IF/CASE/处理NULL 条件与控制函数 类型互转 类型转换函数 操作数组/Map 集合函数 解析/生成JSON JSON 函数 加密/哈希/UUID 加密与哈希函数 数组转多行 展开函数 数学计算/三角函数 数学函数 解析URL/XML URL函数 / XML函数)
排名/取前后行/累计 [窗口函数](#我想… 去看 拼接/截取/替换字符串 字符串函数 日期加减/格式化/提取 日期时间函数 求和/计数/平均/统计 聚合函数 排名/取前后行/累计 窗口函数 IF/CASE/处理NULL 条件与控制函数 类型互转 类型转换函数 操作数组/Map 集合函数 解析/生成JSON JSON 函数 加密/哈希/UUID 加密与哈希函数 数组转多行 展开函数 数学计算/三角函数 数学函数 解析URL/XML URL函数 / XML函数)
IF/CASE/处理NULL [条件与控制函数](#我想… 去看 拼接/截取/替换字符串 字符串函数 日期加减/格式化/提取 日期时间函数 求和/计数/平均/统计 聚合函数 排名/取前后行/累计 窗口函数 IF/CASE/处理NULL 条件与控制函数 类型互转 类型转换函数 操作数组/Map 集合函数 解析/生成JSON JSON 函数 加密/哈希/UUID 加密与哈希函数 数组转多行 展开函数 数学计算/三角函数 数学函数 解析URL/XML URL函数 / XML函数)
类型互转 [类型转换函数](#我想… 去看 拼接/截取/替换字符串 字符串函数 日期加减/格式化/提取 日期时间函数 求和/计数/平均/统计 聚合函数 排名/取前后行/累计 窗口函数 IF/CASE/处理NULL 条件与控制函数 类型互转 类型转换函数 操作数组/Map 集合函数 解析/生成JSON JSON 函数 加密/哈希/UUID 加密与哈希函数 数组转多行 展开函数 数学计算/三角函数 数学函数 解析URL/XML URL函数 / XML函数)
操作数组/Map [集合函数](#我想… 去看 拼接/截取/替换字符串 字符串函数 日期加减/格式化/提取 日期时间函数 求和/计数/平均/统计 聚合函数 排名/取前后行/累计 窗口函数 IF/CASE/处理NULL 条件与控制函数 类型互转 类型转换函数 操作数组/Map 集合函数 解析/生成JSON JSON 函数 加密/哈希/UUID 加密与哈希函数 数组转多行 展开函数 数学计算/三角函数 数学函数 解析URL/XML URL函数 / XML函数)
解析/生成JSON [JSON 函数](#我想… 去看 拼接/截取/替换字符串 字符串函数 日期加减/格式化/提取 日期时间函数 求和/计数/平均/统计 聚合函数 排名/取前后行/累计 窗口函数 IF/CASE/处理NULL 条件与控制函数 类型互转 类型转换函数 操作数组/Map 集合函数 解析/生成JSON JSON 函数 加密/哈希/UUID 加密与哈希函数 数组转多行 展开函数 数学计算/三角函数 数学函数 解析URL/XML URL函数 / XML函数)
加密/哈希/UUID [加密与哈希函数](#我想… 去看 拼接/截取/替换字符串 字符串函数 日期加减/格式化/提取 日期时间函数 求和/计数/平均/统计 聚合函数 排名/取前后行/累计 窗口函数 IF/CASE/处理NULL 条件与控制函数 类型互转 类型转换函数 操作数组/Map 集合函数 解析/生成JSON JSON 函数 加密/哈希/UUID 加密与哈希函数 数组转多行 展开函数 数学计算/三角函数 数学函数 解析URL/XML URL函数 / XML函数)
数组转多行 [展开函数](#我想… 去看 拼接/截取/替换字符串 字符串函数 日期加减/格式化/提取 日期时间函数 求和/计数/平均/统计 聚合函数 排名/取前后行/累计 窗口函数 IF/CASE/处理NULL 条件与控制函数 类型互转 类型转换函数 操作数组/Map 集合函数 解析/生成JSON JSON 函数 加密/哈希/UUID 加密与哈希函数 数组转多行 展开函数 数学计算/三角函数 数学函数 解析URL/XML URL函数 / XML函数)
数学计算/三角函数 [数学函数](#我想… 去看 拼接/截取/替换字符串 字符串函数 日期加减/格式化/提取 日期时间函数 求和/计数/平均/统计 聚合函数 排名/取前后行/累计 窗口函数 IF/CASE/处理NULL 条件与控制函数 类型互转 类型转换函数 操作数组/Map 集合函数 解析/生成JSON JSON 函数 加密/哈希/UUID 加密与哈希函数 数组转多行 展开函数 数学计算/三角函数 数学函数 解析URL/XML URL函数 / XML函数)
解析URL/XML [URL函数](#我想… 去看 拼接/截取/替换字符串 字符串函数 日期加减/格式化/提取 日期时间函数 求和/计数/平均/统计 聚合函数 排名/取前后行/累计 窗口函数 IF/CASE/处理NULL 条件与控制函数 类型互转 类型转换函数 操作数组/Map 集合函数 解析/生成JSON JSON 函数 加密/哈希/UUID 加密与哈希函数 数组转多行 展开函数 数学计算/三角函数 数学函数 解析URL/XML URL函数 / XML函数) / [XML函数](#我想… 去看 拼接/截取/替换字符串 字符串函数 日期加减/格式化/提取 日期时间函数 求和/计数/平均/统计 聚合函数 排名/取前后行/累计 窗口函数 IF/CASE/处理NULL 条件与控制函数 类型互转 类型转换函数 操作数组/Map 集合函数 解析/生成JSON JSON 函数 加密/哈希/UUID 加密与哈希函数 数组转多行 展开函数 数学计算/三角函数 数学函数 解析URL/XML URL函数 / XML函数)

🔤 字符串函数

拼接与构造

场景 函数 说明
拼接字符串 concat 将多个字符串拼接在一起
带分隔符拼接 concat_ws 用指定分隔符连接多个字符串
格式化输出 format_string, printf 类似 C 语言 printf 格式化
生成空格 space 返回指定数量的空格
重复字符串 repeat 将字符串重复 N 次

截取与拆分

场景 函数 说明
按位置截取 substring, substr 从指定位置截取子串
取左/右N字符 left, right 从左/右取固定长度
按分隔符截取 substring_index 取分隔符前/后的内容
按分隔符拆分 split 拆分为数组
取拆分后第N段 split_part 拆分后直接取某一段
分句 sentences 将文本拆分为句子和单词

查找与匹配

场景 函数 说明
查找子串位置 instr, locate, position 返回子串首次出现的位置
判断是否包含 contains 是否包含指定子串
判断前后缀 startswith, endswith 是否以指定字符串开头/结尾
模糊匹配 like, ilike SQL LIKE 模式匹配(ilike不区分大小写)
正则匹配 regexp, regexp_like, rlike 正则表达式匹配
正则提取 regexp_extract, regexp_extract_all 用正则提取匹配内容
正则查找位置 regexp_instr 正则匹配的位置
正则计数 regexp_count 正则匹配出现次数
正则子串 regexp_substr 返回正则匹配的子串
在集合中查找 find_in_set 在逗号分隔列表中查找
发音匹配 soundex 返回发音编码(模糊匹配英文)
编辑距离 levenshtein 计算两个字符串的编辑距离

替换与修改

场景 函数 说明
直接替换 replace 替换所有匹配的子串
正则替换 regexp_replace 用正则表达式替换
逐字符替换 translate 按字符映射替换(类似 tr 命令)
覆盖插入 overlay 在指定位置覆盖替换
数据脱敏 mask 用掩码字符替换敏感数据

去空格与填充

场景 函数 说明
去两端空格 trim, btrim 去除前后空格或指定字符
去左空格 ltrim 去除左侧空格
去右空格 rtrim 去除右侧空格
左填充 lpad 左侧填充到指定长度
右填充 rpad 右侧填充到指定长度

大小写转换

场景 函数 说明
转大写 upper, ucase 全部转大写
转小写 lower, lcase 全部转小写
首字母大写 initcap 每个单词首字母大写

长度与编码

场景 函数 说明
字符长度 length, len, char_length, character_length 返回字符数
字节长度 octet_length, bit_length 返回字节/比特数
ASCII 码 ascii 返回首字符 ASCII 值
ASCII 转字符 chr, char ASCII 码转字符
反转字符串 reverse 反转字符串
选取第N个 elt 从多个字符串中选第N个

📅 日期时间函数

获取当前时间

场景 函数 说明
当前日期 current_date, curdate 返回当前日期(date 类型)
当前时间戳 current_timestamp, now, localtimestamp 返回当前时间戳
当前时区 current_timezone 返回会话时区

日期加减

场景 函数 说明
加/减天 date_add, dateadd, date_sub 日期加减指定天数
加月份 add_months 日期加减指定月数
下一个星期X next_day 返回下一个指定星期几的日期
月末日期 last_day 返回当月最后一天
生成日期序列 sequence 生成连续日期/数字序列

日期差值

场景 函数 说明
天数差 datediff, date_diff 两个日期之间的天数
月数差 months_between 两个日期之间的月数(精确到小数)

日期格式化与解析

场景 函数 说明
日期→字符串 date_format, to_char, to_varchar 按格式输出日期字符串
字符串→日期 to_date 解析字符串为 date 类型
字符串→时间戳 to_timestamp, to_timestamp_ltz, to_timestamp_ntz 解析字符串为 timestamp
构造日期 make_date 从年月日构造 date
构造时间戳 make_timestamp, make_timestamp_ltz, make_timestamp_ntz 从年月日时分秒构造 timestamp
构造间隔 make_interval, make_dt_interval, make_ym_interval 构造 interval 类型

日期截断

场景 函数 说明
截断到指定精度 date_trunc 截断到年/季/月/周/日/时等
截断日期 trunc 截断 date 到年或月

提取日期部分

场景 函数 说明
提取任意部分 extract, date_part, datepart 提取年/月/日/时/分/秒等
year 提取年份
季度 quarter 提取季度(1-4)
month 提取月份(1-12)
day, dayofmonth 提取日(1-31)
hour 提取小时(0-23)
minute 提取分钟(0-59)
second 提取秒(0-59)
星期几 dayofweek, weekday 返回星期几
年中第几天 dayofyear 返回年中第几天(1-366)
年中第几周 weekofyear 返回年中第几周

Unix 时间戳

场景 函数 说明
日期→秒时间戳 unix_timestamp, to_unix_timestamp 转为 Unix 秒级时间戳
秒时间戳→字符串 from_unixtime Unix 时间戳转格式化字符串
日期→天数 unix_date 日期转为距 epoch 天数
天数→日期 date_from_unix_date 天数转为日期
时间戳→秒/毫秒/微秒 unix_seconds, unix_millis, unix_micros 时间戳转为数值
秒/毫秒/微秒→时间戳 timestamp_seconds, timestamp_millis, timestamp_micros 数值转为时间戳

时区转换

场景 函数 说明
UTC→本地 from_utc_timestamp UTC 时间转为指定时区
本地→UTC to_utc_timestamp 本地时间转为 UTC
任意时区转换 convert_timezone 在任意时区之间转换

窗口时间(流处理)

场景 函数 说明
时间窗口 window 生成滑动/滚动时间窗口
窗口结束时间 window_time 获取窗口的事件时间
会话窗口 session_window 基于活动间隔的会话窗口

🔢 数学函数

四舍五入与取整

场景 函数 说明
四舍五入 round, bround 四舍五入(bround 银行家舍入)
向上取整 ceil, ceiling 向上取最近整数
向下取整 floor 向下取最近整数
最近整数 rint 返回最接近的整数(double)

基础运算

场景 函数 说明
绝对值 abs 取绝对值
取反 negative 取相反数
正值 positive 返回自身(正号)
取模 mod, pmod 取余数(pmod 总返回正数)
整除 div 整数除法
符号 sign, signum 返回正负号(-1/0/1)
最大值 greatest 多个值中取最大
最小值 least 多个值中取最小
直方图分桶 width_bucket 将值分配到等宽桶

幂与对数

场景 函数 说明
幂运算 pow, power x 的 y 次方
平方根 sqrt 平方根
立方根 cbrt 立方根
指数 exp, expm1 e 的 x 次方
自然对数 ln, log 自然对数
常用对数 log10, log2, log1p 以 10/2 为底的对数
斜边 hypot sqrt(x²+y²)

三角函数

场景 函数 说明
正弦 sin, asin, sinh, asinh sin / arcsin / 双曲
余弦 cos, acos, cosh, acosh cos / arccos / 双曲
正切 tan, atan, atan2, tanh, atanh tan / arctan / 双曲
余切/正割/余割 cot, sec, csc 其他三角函数
角度弧度互转 degrees, radians 弧度↔角度

常数与随机数

场景 函数 说明
圆周率 pi 返回 π
自然常数 e 返回 e
随机数 rand, random 均匀分布随机数 [0,1)
正态随机数 randn 标准正态分布随机数
阶乘 factorial n!
自增ID monotonically_increasing_id 生成单调递增唯一 ID

进制转换

场景 函数 说明
十进制→二进制 bin 转二进制字符串
十进制→十六进制 hex 转十六进制字符串
十六进制→十进制 unhex 十六进制转回
任意进制转换 conv 在 2-36 进制之间转换

位运算

场景 函数 说明
位与 bit_and 按位与
位或 bit_or 按位或
位异或 bit_xor 按位异或
位计数 bit_count 二进制中 1 的个数
获取某一位 bit_get, getbit 获取指定位的值
左移/右移 shiftleft, shiftright, shiftrightunsigned 位移操作

📊 聚合函数

基础聚合

场景 函数 说明
求和 sum 合计值
计数 count 计数(含 count distinct)
条件计数 count_if 满足条件的行数
平均值 avg, mean 算术平均
最大值 max 取最大
最小值 min 取最小
取最大值对应行 max_by 按某列最大值取另一列
取最小值对应行 min_by 按某列最小值取另一列
任意值 any_value 取组内任意一个值
第一个值 first 取组内第一个值
最后一个值 last 取组内最后一个值
中位数 median 取中位数
众数 mode 取出现最多的值
百分位 percentile, percentile_approx 精确/近似百分位

收集为集合

场景 函数 说明
收集为列表 collect_list, array_agg 组内值收集为数组(含重复)
收集为去重集合 collect_set 组内值收集为数组(去重)

统计函数

场景 函数 说明
标准差 stddev, stddev_samp, stddev_pop, std 样本/总体标准差
方差 variance, var_samp, var_pop 样本/总体方差
协方差 covar_samp, covar_pop 样本/总体协方差
相关系数 corr 皮尔逊相关系数
偏度 skewness 分布偏度
峰度 kurtosis 分布峰度
回归分析 regr_slope, regr_intercept, regr_r2, regr_count, regr_avgx, regr_avgy, regr_sxx, regr_sxy, regr_syy 线性回归系列

近似与概率

场景 函数 说明
近似去重计数 approx_count_distinct HyperLogLog 近似计数
近似百分位 approx_percentile 近似百分位数
直方图 histogram_numeric 数值直方图
Count-Min Sketch count_min_sketch 频率估计草图
布尔全真 bool_and, every 所有值都为 true
布尔存在真 bool_or, some, any 存在 true 值

Bitmap 与 HLL

场景 函数 说明
Bitmap 聚合 bitmap_construct_agg, bitmap_or_agg 构建/合并 bitmap
Bitmap 查询 bitmap_count, bitmap_bit_position, bitmap_bucket_number bitmap 位操作
HLL 聚合 hll_sketch_agg, hll_union_agg 构建/合并 HLL sketch
HLL 查询 hll_sketch_estimate, hll_union HLL 基数估计

分组辅助

场景 函数 说明
分组标识 grouping, grouping_id 标识 GROUPING SETS 中的分组级别

🪟 窗口函数

排序编号

场景 函数 说明
行号 row_number 分区内连续编号(1,2,3...)
排名(跳号) rank 并列相同名次,后续跳号(1,1,3)
排名(不跳号) dense_rank 并列相同名次,不跳号(1,1,2)
百分比排名 percent_rank (rank-1)/(rows-1)
累积分布 cume_dist ≤当前值的行数占比
分桶 ntile 将数据等分为 N 桶

偏移取值

场景 函数 说明
取前N行 lag 取当前行往前第 N 行的值
取后N行 lead 取当前行往后第 N 行的值
窗口第一行 first_value 窗口框内第一行的值
窗口最后一行 last_value 窗口框内最后一行的值(注意默认 frame)
窗口第N行 nth_value 窗口框内第 N 行的值

窗口聚合

所有聚合函数(SUM/AVG/COUNT/MAX/MIN 等)都可以作为窗口函数使用,配合 OVER 子句和 frame 定义实现滑动计算。


❓ 条件与控制函数

条件判断

场景 函数 说明
IF 条件 if 条件为真返回 A,否则返回 B
CASE WHEN case, when 多条件分支判断
范围判断 between 值在范围内
成员判断 in 值在列表中

NULL 处理

场景 函数 说明
取第一个非NULL coalesce 从左到右取第一个非 NULL 值
NULL 则替换 nvl, ifnull 为 NULL 时返回默认值
三元 NULL nvl2 非 NULL 返回 A,NULL 返回 B
相等则返回NULL nullif 两值相等时返回 NULL
NULL安全比较 equal_null NULL=NULL 返回 true
判断是否NULL isnull, isnotnull 判断 NULL
判断是否NaN isnan, nanvl 判断/替换 NaN

逻辑运算

场景 函数 说明
and 逻辑与
or 逻辑或
not 逻辑非

错误处理

场景 函数 说明
断言 assert_true 条件为假时抛出异常
主动报错 raise_error 抛出自定义错误信息
安全加 try_add 溢出返回 NULL 而非报错
安全减 try_subtract 溢出返回 NULL
安全乘 try_multiply 溢出返回 NULL
安全除 try_divide 除零返回 NULL
安全求和 try_sum 溢出返回 NULL
安全均值 try_avg 溢出返回 NULL
安全取元素 try_element_at 越界返回 NULL
安全转二进制 try_to_binary 失败返回 NULL
安全转数字 try_to_number 失败返回 NULL
安全转时间戳 try_to_timestamp 失败返回 NULL
安全解密 try_aes_decrypt 失败返回 NULL

🔄 类型转换函数

场景 函数 说明
通用转换 cast 转换为任意类型
转整数 int, bigint, smallint, tinyint 转为整数类型
转浮点 float, double, decimal 转为浮点/定点类型
转字符串 string 转为字符串
转布尔 boolean 转为布尔值
转日期 date 转为日期类型
转时间戳 timestamp 转为时间戳类型
转二进制 binary, to_binary 转为二进制
转数字(格式化) to_number 按格式字符串转数字
查看类型 typeof 返回表达式的数据类型

📦 集合函数 (Array / Map / Struct)

Array 创建

场景 函数 说明
创建数组 array 从多个值构建数组
生成序列 sequence 生成等差数组
重复填充 array_repeat 将值重复 N 次生成数组

Array 查询

场景 函数 说明
取元素 element_at, get 按索引取数组元素
数组大小 size, array_size, cardinality 返回数组长度
是否包含 array_contains 数组是否包含指定值
查找位置 array_position 值在数组中的位置
是否有交集 arrays_overlap 两数组是否有共同元素
条件存在 exists 是否存在满足条件的元素
条件全满足 forall 是否所有元素满足条件

Array 变换

场景 函数 说明
映射转换 transform 对每个元素应用函数
过滤 filter 保留满足条件的元素
聚合/归约 aggregate, reduce 将数组归约为单个值
排序 array_sort, sort_array 数组排序
打乱 shuffle 随机打乱数组
反转 reverse 反转数组
截取 slice 截取数组子段
展平 flatten 嵌套数组展平一层
去重 array_distinct 数组元素去重
去NULL array_compact 移除数组中的 NULL
最大/最小 array_max, array_min 数组中的最大/最小值

Array 集合运算

场景 函数 说明
并集 array_union 两数组合并去重
交集 array_intersect 两数组共同元素
差集 array_except A 有 B 没有的元素

Array 增删改

场景 函数 说明
头部添加 array_prepend 在数组头部插入元素
尾部添加 array_append 在数组尾部插入元素
指定位置插入 array_insert 在指定位置插入元素
删除元素 array_remove 删除所有匹配元素

Array 转换

场景 函数 说明
数组拼接为字符串 array_join 用分隔符连接数组元素
多数组配对 arrays_zip, zip_with 多个数组按位置组合

Map 创建

场景 函数 说明
创建 Map map 从 key-value 对构建 map
两数组→Map map_from_arrays keys 数组 + values 数组 → map
条目数组→Map map_from_entries struct 数组 → map
字符串→Map str_to_map 按分隔符解析为 map

Map 查询与变换

场景 函数 说明
取值 element_at 按 key 取 value
获取所有 key map_keys 返回所有 key 的数组
获取所有 value map_values 返回所有 value 的数组
转为条目数组 map_entries map → struct 数组
是否包含 key map_contains_key 判断 key 是否存在
合并 Map map_concat 合并多个 map
过滤 Map map_filter 按条件过滤 key-value
变换 key transform_keys 对每个 key 应用函数
变换 value transform_values 对每个 value 应用函数
配对变换 map_zip_with 两个 map 按 key 合并计算

Struct 操作

场景 函数 说明
创建 Struct struct, named_struct 构建结构体

📋 JSON 函数

场景 函数 说明
提取JSON字段 get_json_object 用 JSONPath 提取值
JSON→Struct from_json JSON 字符串解析为结构化类型
Struct→JSON to_json 结构化数据转为 JSON 字符串
提取多字段 json_tuple 一次提取多个 JSON 字段
JSON数组长度 json_array_length 获取 JSON 数组的元素个数
JSON对象的key json_object_keys 获取 JSON 对象的所有 key
推断JSON Schema schema_of_json 从 JSON 样本推断 schema

📄 CSV 函数

场景 函数 说明
CSV→Struct from_csv CSV 字符串解析为结构化类型
Struct→CSV to_csv 结构化数据转为 CSV 字符串
推断CSV Schema schema_of_csv 从 CSV 样本推断 schema

🔐 加密与哈希函数

场景 函数 说明
MD5 md5 128 位 MD5 哈希
SHA-1 sha, sha1 160 位 SHA-1 哈希
SHA-2 sha2 SHA-224/256/384/512 哈希
通用哈希 hash Murmur3 哈希(返回 int)
xxHash64 xxhash64 xxHash64 哈希(返回 long)
CRC32 crc32 CRC32 校验和
AES 加密 aes_encrypt AES 对称加密
AES 解密 aes_decrypt AES 对称解密
Base64 编码 base64 二进制转 Base64 字符串
Base64 解码 unbase64 Base64 字符串转二进制
UUID uuid 生成随机 UUID
Luhn 校验 luhn_check 验证信用卡等号码校验位

🌐 URL 与编码函数

场景 函数 说明
URL 编码 url_encode 对 URL 进行百分号编码
URL 解码 url_decode 解码百分号编码
解析 URL 部分 parse_url 提取 URL 的 host/path/query 等
字符编码 encode 字符串按指定编码转二进制
字符解码 decode 二进制按指定编码转字符串
数字格式化 format_number 数字格式化(千分位等)

💥 展开函数 (Generator / UDTF)

场景 函数 说明
数组展开 explode, explode_outer 数组每个元素生成一行(outer 保留 NULL)
带位置展开 posexplode, posexplode_outer 展开并输出索引位置
Struct数组展开 inline, inline_outer struct 数组展开为多列多行
多列转多行 stack 将多列转为 N 行(列转行)

🔧 系统与元信息函数

场景 函数 说明
当前用户 current_user, user 返回当前用户名
当前数据库 current_database, current_schema, current_catalog 返回当前 database/catalog
Spark 版本 version 返回 Spark 版本号
输入文件名 input_file_name 当前行来自哪个文件
文件块信息 input_file_block_start, input_file_block_length 文件块起始位置和长度
分区ID spark_partition_id 当前行所在分区 ID
数据类型 typeof 返回表达式的类型名
隐私 privacy 数据隐私相关
Java 方法调用 java_method, reflect 调用 Java 静态方法

🗂️ XML (XPath) 函数

场景 函数 说明
XPath 查询 xpath 返回匹配节点的字符串数组
XPath 布尔 xpath_boolean XPath 表达式是否为真
XPath 数值 xpath_double, xpath_float, xpath_int, xpath_long, xpath_short, xpath_number XPath 提取数值
XPath 字符串 xpath_string XPath 提取字符串
相关推荐
anew___1 小时前
《数据库原理》精要解读(三)—— SQL:与数据库对话的艺术
数据库·sql·oracle
Bechamz1 小时前
大数据开发学习Day45
大数据·学习
暴躁小师兄数据学院1 小时前
【AI大数据工程师特训笔记】第10讲:数据库用户、权限管理、数据库约束
大数据·数据库·笔记·sql·postgresql
标书畅畅行1 小时前
2026 年 AI 标书工具市场观察:技术迭代与选型指南
大数据·人工智能
黎阳之光2 小时前
视频孪生+空天地水工融合,黎阳之光构建智慧水利监测新范式
大数据·人工智能·物联网·算法·安全
元让_vincent2 小时前
Spark 2.0:面向 Web 的 3DGS 可视化与大场景渲染平台详解
前端·3d·spark·渲染·轻量化·3dgs·lod
暴躁小师兄数据学院2 小时前
【AI大数据工程师特训笔记】第02讲:PostgreSQL数据库生态全景
大数据·数据库·人工智能·postgresql
兔子宇航员03012 小时前
HIVE SQL 中 NULL 值在 JOIN 和 GROUP BY 中的致命陷阱与解决方案
hive·hadoop·sql
2601_957882243 小时前
企业矩阵系统建设实践:优化内容资产与数字获客流程
大数据·人工智能·矩阵系统·企业数字化运营