Scala spark数据帧的使用“;作为「;方法

Scala spark数据帧的使用“;作为「;方法,scala,apache-spark,dataframe,apache-spark-sql,Scala,Apache Spark,Dataframe,Apache Spark Sql,我正在看文件 有 def as(alias: String): DataFrame Returns a new DataFrame with an alias set. Since 1.3.0 这种方法的目的是什么?它是如何使用的?能举个例子吗 我还没有在网上找到关于这个方法的任何信息,而且文档也几乎不存在。我没有使用此方法生成任何类型的别名。谢谢。我有一种感觉,不知怎么的,它是用来给列添加别名的。我将发布一个关于这个的问题。 SELECT * FROM ta

我正在看文件

def as(alias: String): DataFrame
    Returns a new DataFrame with an alias set.
    Since
        1.3.0 
这种方法的目的是什么?它是如何使用的?能举个例子吗


我还没有在网上找到关于这个方法的任何信息,而且文档也几乎不存在。我没有使用此方法生成任何类型的别名。

谢谢。我有一种感觉,不知怎么的,它是用来给列添加别名的。我将发布一个关于这个的问题。
SELECT *
FROM table AS alias;
import org.apache.spark.sql.functions.col
case class Person(name: String, age: Int)

val df = sqlContext.createDataFrame(
    Person("Alice", 2) :: Person("Bob", 5) :: Nil)

val df_as1 = df.as("df1")
val df_as2 = df.as("df2")
val joined_df = df_as1.join(
    df_as2, col("df1.name") === col("df2.name"), "inner")
joined_df.select(
    col("df1.name"), col("df2.name"), col("df2.age")).show
+-----+-----+---+
| name| name|age|
+-----+-----+---+
|Alice|Alice|  2|
|  Bob|  Bob|  5|
+-----+-----+---+
df.registerTempTable("df")
sqlContext.sql("""SELECT df1.name, df2.name, df2.age
                  FROM df AS df1 JOIN df AS df2
                  ON df1.name == df2.name""")
df.as[Person]