sparksql的SQL风格编程

我们前面的文章介绍了DSL风格的编程,现在介绍以下两种编程风格之一的sql风格编程。

sql风格编程简介

sql风格编程就是我们可以通过spark.sql来执行sql语句进行查询,这时的DataFrame就像是一张关系型数据表。返回的是DataFrame。

如果我们想用sql风格的编程,需要先将DataFrame注册成表,注册表的方式有以下3种:

go 复制代码
# 注册临时表
df.createTempView("score")
# 注册临时表,如果存在则替换
df.createOrReplaceTempView("score")
# 注册全局表
df.createGlobalTempview("score")

值得注意的是,全局表是可以跨sparksession对象使用的,在一个程序内,多个sparksession对象都可以使用,临时表只能在当前的sparksession中使用,全局表的查询需带上前缀global_temp.xxx

将dataframe注册成表之后就可以用sql语句来查询了

python 复制代码
spark.sql("SELECT subject, COUNT(*) AS cnt FROM score GROUP BY subject").show()
相关推荐
冯RI375II694873 小时前
CPC认证的流程是怎样的呢
大数据
打码人的日常分享4 小时前
数据中心信息中心信息科管理制度
大数据·运维·网络·云计算·制造
AI周红伟5 小时前
周红伟:信创大模型企业级部署实操,Qwen3.5 昇腾企业级部署案例实操
大数据·人工智能·大模型·智能体
SickeyLee6 小时前
AI产品经理-大模型的智力之源与能力边界
大数据·人工智能
智海观潮6 小时前
Vanna-ai - 让自然语言对话SQL数据库成为可能,支持多种数据库,大模型和向量存储
大数据·nlp·aigc
阿甘编程点滴6 小时前
2026年适合企业产品介绍可商用的9款解说配音软件
大数据
AI周红伟8 小时前
周红伟:Qwen3.5-Plus - 企业级部署案例实操,Qwen3.5 LLM,包括 Qwen3.5-397B-A17B
大数据·人工智能·大模型·智能体
历程里程碑9 小时前
普通数组---合并区间
java·大数据·数据结构·算法·leetcode·elasticsearch·搜索引擎
T062051410 小时前
【面板数据】A股上市公司重污染行业分组数据集-含参考文献 (2000-2024年)
大数据
cm_chenmin10 小时前
Cursor最佳实践之三:MCP
大数据·elasticsearch·搜索引擎