【发布时间】:2022-01-10 08:09:52
【问题描述】:
以下是您可以想象的更大的源文件的一部分:
date,code1,postcode,cityname,total
2020-03-27,2011,X700,Curepipe,44
2020-03-29,2011,X700,Curepipe,44
2020-03-26,2011,X700,Curepipe,22
2020-03-27,2035,X920,vacoas,3
2020-03-25,2011,X920,vacoas,1
2020-03-24,2122,X760,souillac,22
2020-03-23,2122,X760,souillac,11
2020-03-22,2257,X760,souillac,10
2020-03-27,2480,X510,rosehill,21
2020-03-22,2035,X510,rosehill,7
2020-03-20,2035,X510,rosehill,3
以下代码后:
#Load data
from pyspark.sql import SparkSession
spark = SparkSession.builder.master("local").appName("source").getOrCreate()
dfcases = spark.read.format("csv").option("header", "true").load("sourcefile.csv")
dfcases.createOrReplaceTempView("tablecases")
spark.sql(XXXXXXXXXXXXX).show() #Mysql code to insert
我想得到这个结果:
Curepipe,X700,2020-03-27,44
Curepipe,X700,2020-03-29,44
souillac,X760,2020-03-24,22
rosehill,X510,2020-03-27,21
vacoas,X920,2020-03-27,3
我们的目标是:
- 选择每个城市名称的总和最大的日期(注意,如果一个城市在 2 个不同的日期有 MAX 总和,则一个城市可以出现两次),
- 按总降序、日期升序、城市名升序排序。
谢谢!
【问题讨论】:
-
是不是这个问题的SQL版本:stackoverflow.com/questions/70181393/…?
标签: sql apache-spark pyspark apache-spark-sql