You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求与PySpark DataFrame分组求和代码等价的PySpark SQL查询语句

对应的PySpark SQL查询语句

没问题,我帮你把这段PySpark DataFrame的分组求和逻辑转换成等价的PySpark SQL语句~

首先你需要先把你的DataFrame注册成一个临时视图(这样SQL才能访问到它的数据),然后编写对应的分组求和查询:

# 1. 将DataFrame注册为临时视图,视图名可以自定义,这里用`sales_data`举例
df.createOrReplaceTempView("sales_data")

# 2. 执行PySpark SQL查询,得到和原DataFrame操作完全一致的结果
spark.sql("""
    SELECT 
        Country,
        `Product Category`,
        `Sub Category`,
        SUM(Profit) AS Total_Profit
    FROM sales_data
    GROUP BY Country, `Product Category`, `Sub Category`
    ORDER BY Country, `Product Category`, `Sub Category`
""").show()

小说明:

  • 因为你的列名里包含空格(比如Product Category),所以在SQL里需要用反引号`把这类列名括起来,避免语法报错
  • 如果希望结果列名和原DataFrame操作返回的sum(Profit)完全一致,可以把AS Total_Profit改成AS sum(Profit)``(同样用反引号包裹)
  • 额外添加的ORDER BY是为了让结果排序更规整,和原show()的默认排序逻辑对齐,不需要的话可以直接删掉

内容的提问来源于stack exchange,提问作者Arun Prakash

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.07 07:47:44