【发布时间】:2015-07-21 12:07:42
【问题描述】:
在 spark SQL(也许只有 HiveQL)中可以做到:
select sex, avg(age) as avg_age
from humans
group by sex
这将导致 DataFrame 的列名为 "sex" 和 "avg_age"。
如何在不使用文本 SQL 的情况下将 avg(age) 别名为 "avg_age"?
编辑: 在 zero323 的回答之后,我需要添加以下约束:
要重命名的列的名称可能未知/无法保证,甚至无法寻址。在文本 SQL 中,使用“select EXPR as NAME”消除了对 EXPR 具有中间名称的要求。在上面的示例中也是如此,其中“avg(age)”可以获得各种自动生成的名称(在 spark 版本和 sql-context 后端中也会有所不同)。
【问题讨论】:
-
您可以为您的 df 添加别名。
标签: scala apache-spark apache-spark-sql