gpt4 book ai didi

scala - org.apache.spark.sql.AnalysisException:无法解析给定的输入列

转载 作者:行者123 更新时间:2023-12-04 22:28:40 26 4
gpt4 key购买 nike

exitTotalDF
.filter($"accid" === "dc215673-ef22-4d59-0998-455b82000015")
.groupBy("exiturl")
.agg(first("accid"), first("segment"), $"exiturl", sum("session"), sum("sessionfirst"), first("date"))
.orderBy(desc("session"))
.take(500)

org.apache.spark.sql.AnalysisException: cannot resolve '`session`' given input columns: [first(accid, false), first(date, false), sum(session), exiturl, sum(sessionfirst), first(segment, false)]


像sum函数一样,它无法正确找到列名。

使用Spark 2.1

最佳答案

通常,在这种情况下,我将在列上使用as方法。例如.agg(first("accid"), first("segment"), $"exiturl", sum("session").as("session"), sum("sessionfirst"), first("date"))。这使您可以更好地控制期望值,并且如果总名称在将来的spark版本中进行了更改,那么更新数据集中的所有名称将不会有太多麻烦。

另外,我只是运行了一个简单的测试。当您不指定名称时,Spark 2.1中的名称似乎已更改为“ sum(session)”。自己找到此方法的一种方法是在数据集上调用printSchema。

关于scala - org.apache.spark.sql.AnalysisException:无法解析给定的输入列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43875245/

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