无法在 Spark SQL 中处理具有带正斜杠的列的 Parquet 数据
Unable to work with Parquet data having columns with forward slash in Spark SQL
我有一个 Parquet 文件,我可以在 Spark SQL 中加载该 parquet 文件。但是 Parquet 文件有很多带有正斜杠的列,当我尝试使用这些列从 table 获取数据时会导致问题。
例如列名称:abc/def/efg/hij
parqfile.registerTempTable("parquetTable")
val result=sqlContext.sql("select abc/def/efg/hij from parquetTable")
抛出以下错误。
org.apache.spark.sql.AnalysisException: cannot resolve 'abc' given input columns
斜杠是保留字符,您需要在 SELECT 中使用反引号将列名引起来,如下所示:
val result=sqlContext.sql("select `abc/def/efg/hij` from parquetTable")
我有一个 Parquet 文件,我可以在 Spark SQL 中加载该 parquet 文件。但是 Parquet 文件有很多带有正斜杠的列,当我尝试使用这些列从 table 获取数据时会导致问题。 例如列名称:abc/def/efg/hij
parqfile.registerTempTable("parquetTable")
val result=sqlContext.sql("select abc/def/efg/hij from parquetTable")
抛出以下错误。
org.apache.spark.sql.AnalysisException: cannot resolve 'abc' given input columns
斜杠是保留字符,您需要在 SELECT 中使用反引号将列名引起来,如下所示:
val result=sqlContext.sql("select `abc/def/efg/hij` from parquetTable")