📅  最后修改于: 2023-12-03 15:26:58.027000             🧑  作者: Mango
在 PySpark 中,我们可以使用 createOrReplaceTempView()
方法将 DataFrame 注册为临时表,以便我们可以使用 SQL 查询来操作 DataFrame 中的数据。
df.createOrReplaceTempView(viewName=None)
参数:
viewName
:可选,要注册的临时表的名称。如果没有指定该参数,则默认值为 DataFrame 的名称。from pyspark.sql import SparkSession
# 创建 SparkSession 对象
spark = SparkSession.builder.appName("Register Temp Table").getOrCreate()
# 创建 DataFrame
data = [("Alice", 28), ("Bob", 35), ("Charlie", 23)]
df = spark.createDataFrame(data, ["Name", "Age"])
# 将 DataFrame 注册为临时表
df.createOrReplaceTempView("people")
# 使用 SQL 查询来操作 DataFrame 中的数据
result = spark.sql("SELECT * FROM people WHERE Age > 30")
# 打印查询结果
result.show()
运行上述代码,输出结果如下:
+----+---+
|Name|Age|
+----+---+
| Bob| 35|
+----+---+
我们先创建了一个 SparkSession 对象,并使用 createDataFrame()
方法创建了一个 DataFrame。接着,我们使用 createOrReplaceTempView()
方法将 DataFrame 注册为临时表 people
。最后,我们使用 spark.sql()
方法执行 SQL 查询,并将查询结果打印出来。
PySpark 中的 createOrReplaceTempView()
方法可以将 DataFrame 注册为临时表,使我们可以使用 SQL 查询来操作 DataFrame 中的数据。在使用时,我们可以指定要注册的临时表的名称,也可以使用默认名称。