如何在 SQL 中使用 Apache Spark 制作第一行标题

Posted

技术标签:

【中文标题】如何在 SQL 中使用 Apache Spark 制作第一行标题【英文标题】:How to make first row header with Apache Spark in SQL 【发布时间】:2021-11-20 22:34:25 【问题描述】:

谁能告诉我如何使用魔术 SQL 在 Databricks 上使用 Apache Spark 使第一行 header=True。

我使用的代码是

%sql
CREATE OR REPLACE VIEW enrraces.race_circuits_df
AS SELECT *
FROM csv.`/FileStore/tables/results.csv`

我只想将第一行设为标题。

谢谢

【问题讨论】:

【参考方案1】:

试试这个 -

%sql
CREATE OR REPLACE VIEW enrraces.race_circuits_df
USING CSV
OPTIONS (path "/FileStore/tables/results.csv", header "true");

SELECT *
FROM enrraces.race_circuits_df

%sql USE enrraces;
CREATE OR REPLACE VIEW race_circuits_df
USING CSV
OPTIONS (path "/FileStore/tables/results.csv", header "true");

SELECT * FROM race_circuits_df

【讨论】:

嗨 Assaf,我收到以下错误:== SQL == 创建或替换视图 enrraces.race_circuits_df 使用 CSV ^^^ 选项(路径“/FileStore/tables/results.csv”, header "true") AS SELECT * FROM csv./FileStore/tables/results.csv 其实完整的错误是:mismatched input 'USING' expecting '(', 'AS', 'COMMENT', 'PARTITIONED', 'TBLPROPERTIES'(line 2, pos 0) == SQL == CREATE OR REPLACE VIEW enrraces.race_circuits_df USING CSV ^^^ OPTIONS (path "/FileStore/tables/results.csv", header "true") AS SELECT * FROM csv.`/FileStore/tables/results.csv @Patterson 你能试试我刚刚添加的任何一个解决方案吗?编辑了我的答案。 嗨,这对我有用%sql create table if not exists enrraces.race_circuits_df using csv options ('header' = 'true') location "/FileStore/tables/results.csv" 太棒了! @帕特森

以上是关于如何在 SQL 中使用 Apache Spark 制作第一行标题的主要内容,如果未能解决你的问题,请参考以下文章

调用 saveAsTable 时出现 org.apache.spark.sql.AnalysisException

如何将列添加到 mapPartitions 内的 org.apache.spark.sql.Row

如何在 Apache-Spark 2.x 中使用 java 进行增量序列

在 org.apache.spark.sql.types.DataTypes 中找不到 uuid

如何解决 Spark 中的“aggregateByKey 不是 org.apache.spark.sql.Dataset 的成员”?

Apache Spark 3.0 是如何提高 SQL 工作负载的性能