📜  注册临时表 pyspark - Python (1)

📅  最后修改于: 2023-12-03 15:26:58.027000             🧑  作者: Mango

注册临时表 pyspark - Python

在 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 中的数据。在使用时,我们可以指定要注册的临时表的名称,也可以使用默认名称。