gpt4 book ai didi

scala - Spark Scala 数据帧查找最大值

转载 作者:行者123 更新时间:2023-12-01 02:41:12 26 4
gpt4 key购买 nike

我正在使用以下内容来查找最大列值。

  val d = sqlContext.sql("select max(date), id from myTable group By id")

如何在不注册临时表的情况下对 DataFrame 执行相同的查询。

谢谢,

最佳答案

直接转换为 DataFrame Scala API:

df.groupBy("id").agg(max("date"))

Spark 2.2.0 执行计划对于 OP 的 SQL 和 DF 场景是相同的。
spark-shell的完整代码:
Seq((1, "2011-1-1"), (2, "2011-1-2")).toDF("id", "date_str").withColumn("date", $"date_str".cast("date")).write.parquet("tmp")
var df = spark.read.parquet("tmp")
df.groupBy("id").agg(max("date")).explain

df.createTempView("myTable")
spark.sql("select max(date), id from myTable group By id").explain

关于scala - Spark Scala 数据帧查找最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37341659/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com