如何将pyspark.sql.dataframe.DataFrame转换为Databricks Notebook中的SQL表

13
我创建了一个pyspark.sql.dataframe.DataFrame类型的数据帧,通过执行以下代码行:dataframe = sqlContext.sql("select * from my_data_table") 如何将它转换回可在其上运行SQL查询的SparkSQL表?
1个回答

16

您可以使用createReplaceTempView创建表。在您的情况下,代码如下:

dataframe.createOrReplaceTempView("mytable")

接下来,您可以使用SQL查询您的mytable

如果您使用的Spark版本≤1.6.2,则可以使用registerTempTable


2
当我运行dataframe.createOrReplaceTempView("mytable")时,我会得到以下错误:'DataFrame'对象没有属性'createOrReplaceTempView'。 - Semihcan Doken
你正在使用哪个版本的Apache Spark? - Alberto Bonsanto
1
如果您想永久创建一个表,请使用以下代码:df.write.format("parquet").saveAsTable("mytable") - Shrikant Prabhu
使用以下代码先删除表(如果存在),然后创建一个新表:spark.sql("DROP TABLE IF EXISTS " + tableName) - Shrikant Prabhu

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接