You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spark执行SQL时出现mismatched input 'GROUP'报错如何解决

问题解决说明

错误产生原因

  • 该报错由SQL子句书写顺序不符合语法规范导致:标准SQL语法要求HAVING子句必须放在GROUP BY子句之后,HAVING的作用是对GROUP BY聚合计算后的结果做过滤,你的代码将HAVING写在了GROUP BY前面,Spark SQL解析器完成HAVING子句解析后默认语句已经结束,后续出现GROUP关键字就会触发语法匹配错误。

修复方案

调整GROUP BY和HAVING的先后顺序即可,修正后代码如下:

spark.sql("SELECT state, AVG(gestation_weeks) "
          "FROM natality "
          "WHERE state is not null "
          "GROUP BY state "
          "HAVING AVG(gestation_weeks) > (SELECT AVG(gestation_weeks) FROM natality)").show()

内容的提问来源于stack exchange,提问作者Sergi Solé

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 21:15:10