Spark SQL - 选择所有和计算列?

新手上路,请多包涵

这是一个完全菜鸟的问题,很抱歉。在 Spark 中,我可以使用 select as:

 df.select("*"); //to select everything
df.select(df.col("colname")[, df.col("colname")]); //to select one or more columns
df.select(df.col("colname"), df.col("colname").plus(1)) //to select a column and a calculated column

但。如何选择所有列加上计算的列?显然 select("*", df.col("colname").plus(1)) 不起作用(编译错误)。这在JAVA下怎么实现呢?谢谢!

原文由 lte__ 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 615
2 个回答

做就是了:

 df.select(df.col("*"), df.col("colName").plus(1));

原文由 Yuan JI 发布,翻译遵循 CC BY-SA 3.0 许可协议

您可以使用 withColumn() 方法,这将为 DataFrame 创建一个新列。

 df.select("*")
  .withColumn("ColName", col("colName").plus(1))

原文由 Daniel Gallegos 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题