如何在Spark SQL查询中转义特殊字符,“`”似乎不起作用

时间:2018-11-15 16:45:41

标签: apache-spark apache-spark-sql

我在Apache Spark中有一个数据框,该数据框内有一些结构。现在,我想在此数据帧上运行一些Spark SQL查询。到目前为止,我认为使用`在数据框中引用特殊名称可以很好地工作(对于“ foo-bar”之类的名称也是如此)。但是现在我有一个名为“fääär”的字段,解析器在此失败

Exception in thread "main" org.apache.spark.sql.catalyst.parser.ParseException: 
extraneous input 'ä' expecting {<EOF>, ',', 'FROM', 'WHERE', 'GROUP', 'ORDER', 'HAVING', 'LIMIT', 'LATERAL', 'WINDOW', 'UNION', 'EXCEPT', 'MINUS', 'INTERSECT', 'SORT', 'CLUSTER', 'DISTRIBUTE'}(line 1, pos 1503)

这是它抱怨的查询部分:

SELECT [...] changes.`fäää`.`new` as changes_AL_fäää_new [...]

有人知道我在这里还应该使用什么其他报价,以便它能正常工作?带有这种类型的引用的其他SQL语句也可以正常工作(即使在这里不是必需的),例如

association.`bla`.`deleted` as association_bla_deleted

如果有人想知道为什么要这样做:我想展平数据框以将其写入SQL数据库。

0 个答案:

没有答案