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()
相关推荐
Geoffwo12 小时前
通用动作意念脑电信号高度相似的理论依据
大数据·人工智能
科技圈快迅13 小时前
新工科保研机构怎么选?垂直辅导与综合型服务模式差异解析
大数据·人工智能
大模型丫丫13 小时前
Agent开发的难点是什么呢?
大数据·人工智能·学习
在深圳创业的何仙姑13 小时前
2026 深圳跨境财税服务商筛选参考|行业风险规避实操指南
大数据·人工智能·跨境电商·财税
大模型丫丫14 小时前
Skill-Agent 如何实践:从概念到落地的完整指南
java·大数据·人工智能
问商十三载14 小时前
2026大模型GEO优化体系:3层链路提收录,零成本提34%引用率附工具包
大数据·前端·人工智能
qiten_00714 小时前
LangChain核心组件深入理解第四篇 -- Tool Agent运行的手和脚
大数据·人工智能·langchain
数智化管理手记14 小时前
全面预算管理执行偏差大?全面预算管理全流程落地步骤是什么
大数据·网络·数据库·人工智能·数据挖掘
大模型码小白14 小时前
Milvus 架构设计:从向量索引到分布式检索,AI 原生存储引擎的内部机制
java·大数据·人工智能·分布式·深度学习·milvus
LitchiCheng15 小时前
轻量化微调 Qwen2.5 LoRA 训练全流程详解
大数据·人工智能·spark