首页 > 解决方案 > 谁能解决 Spark databricks 中的错误

问题描述

我的 SQL 请求:

SELECT Incident Number FROM fireIncidents where Incident Date='04/04/2016'

SQL 语句中的错误:

ParseException:不匹配的输入 'Date' 期望 {, ';'}(第 1 行,第 57 行)

标签: sqlapache-sparkdatabricks

解决方案


Incident Date您在列中有一个空格。

如果您想让 spark 知道该列有空格,请在 col 的开头和结尾使用 ` 符号。

Incident Number上校相同。

SELECT `Incident Number` FROM fireIncidents where `Incident Date`='04/04/2016'

如果您的Incident Datecol 是日期,您可以将其转换为 spark 格式,使用

select `Incident Date`, to_date(`Incident Date`, 'dd/MM/yyyy') FROM fireIncidents""").show()

产生

+-------------+----------------------------------+
|Incident Date|to_date(Incident Date, dd/MM/yyyy)|
+-------------+----------------------------------+
|   04/04/2016|                        2016-04-04|
|   04/04/2016|                        2016-04-04|
|   04/04/2016|                        2016-04-04|
+-------------+----------------------------------+

推荐阅读