如何在 PySpark 笔记本中 运行 sql 查询

How to run sql query in PySpark notebook

我有一个 SQL 查询,我在 Azure Synapse analytics 中 运行 查询来自 ADLS 的数据。 我可以 运行 在 Notebook 中使用 Azure Synapse 分析中的 PySpark 进行相同的查询吗?

我在 notebook 中搜索了一些 运行 sql 的方法,但看起来需要对代码进行一些修改才能做到这一点。

%%sql 或 spark.sql("")

查询 SELECT * 从 OPENROWSET( 批量 'https://xxx.xxx.xxx.xxx.net/datazone/Test/parquet/test.snappy.parquet', 格式 = 'PARQUET' )

读取数据湖文件并使用 saveAsTable 写入数据帧并查询 table,如下所示。

df = spark.read.load('abfss://<container-name>@<storage-account-name>.dfs.core.windows.net/<filename>', format='parquet')
df.write.mode("overwrite").saveAsTable("testdb.test2")

使用 %%sql

%%sql
select * from testdb.test2

使用 %%pyspark

%%pyspark
df = spark.sql("select * from testdb.test2")
display(df)