官方文档
spark sql 函数
表结构相关
显示该表的建表语句
SHOW CREATE TABLE `database`.`tableName`
显示该表的列名、列的类型、列的注释
DESC `database`.`tableName`
显示该表的列名
SHOW COLUMNS FROM `database`.`tableName`
读相关
字符串
select split('a,b,c' , ',' )[0 ]; - > a
select replace('abc bca test' , ' ' ,',' ) - > abc,bca,test
select subStr('123456abcd' ,1 ,5 ) - > 12345
case when
(case `col` when xxx then xxx else xxx end ) as xxx;
select
str,
(case (split(str,'-' )[0 ]) when split(str,'-' )[0 ] then split(str,'-' )[0 ] else '' end ) as first_id,
(case (split(str,'-' )[1 ]) when split(str,'-' )[1 ] then split(str,'-' )[1 ] else '' end ) as sec_id,
(case (split(str,'-' )[2 ]) when split(str,'-' )[2 ] then split(str,'-' )[2 ] else '' end ) as third_id
from (
select '123-456' as str
) a
str first_id sec_id third_id
123 -456 123 456
日期、时间
SELECT now();
SELECT to_date('2022-11-10 11:00:01' )
select months_between('2022-11-20' ,'2022-05-02' )
select DATEDIFF('2023-10-08 00:00:00' , now())
select to_timestamp('202211211100' ,'yyyyMMddHHmm' ) time 2022 -11 -21 11 :00 :00.0
Map
select map('key' ,'value' )
Array
select array_contains (split('a,b,c' , ',' ),'a' ); - > true
select array ("1","2","3")
Struct
select struct('a' ,'b' ,'c' );
Agg
/ / 把多行聚合成一行,type:list
collect_list(`col`)
/ / 同上,type: set
collect_set(`col`)
explode
/ / 将数组拆成多行
select explode(array ("1","2","3")) as col
col
1
2
3
lateral view + explode
select id, number from
(
select 1 as id , array ("1","2","3") as arr
) a lateral view explode (arr) as number
id number
1 1
1 2
1 3
Json
select to_json(struct('a' ,'b' ,'c' )); - > {"col1":"a","col2":"b","col3":"c"}
select to_json(map('key' ,'value' )); - > {"key":"value"}
select to_json(split('a,b,c' , ',' )); - > ["a","b","c"]
select get_json_object('["a","b","c"]' ,'$[0]' ); - > a
select get_json_object('["a","b","c"]' ,'$[*]' ); - > a,b,c
select get_json_object('{"key":"value"}' ,'$.key' ) - > value
写相关
插入数据进某表
INSERT OVERWRITE TABLE `database`.`tableName`
(
SELECT * FROM `tableName2`
2
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧