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

Databricks SQL报mismatched input ')'及分组表达式为空错误排查

报错根因

两个报错对应两个独立的语法、逻辑问题:

  • 解析错误mismatched input ')' expecting ',':CASE...END AS zoom``整个表达式外层多套了一层无意义的括号,解析器识别到列别名后,默认括号内的列定义已结束、需要逗号分隔其他列,直接碰到闭合括号就触发报错,报错位置刚好对应多余右括号的位置。
  • 分析错误grouping expressions sequence is empty, and 'fdse.eventaction' is not an aggregate function:聚合函数sum()被错误写在CASE WHEN判断内部,同时查询没有写GROUP BY子句,SQL引擎判定你既没有指定分组维度,也没有对非聚合字段eventaction做聚合处理,不符合聚合查询的语法规则。
修复方案

如果你的需求是统计近10天内zoom image行为的总事件数,不需要用窗口函数或者first()函数,按如下逻辑调整即可直接运行:

SELECT 
  SUM(CASE WHEN fdse.`eventaction` IN ('zoom image') THEN CAST(fdse.`totalevents` AS BIGINT) ELSE 0 END) AS `zoom`
FROM GA_FAVORITES_DIGITAL_STYLIST_EVENTS AS fdse
INNER JOIN GA_FAVORITES_SESSIONS AS fs
  ON fdse.uniquesessionid = fs.uniquesessionid
  AND fdse.trans_date = fs.trans_date
WHERE fs.trans_date >= date_add(current_date, -10)
LIMIT 10
关键调整说明
  • 移除包裹CASE表达式的多余外层括号,彻底解决括号不匹配的解析报错
  • 将sum()聚合函数移到CASE表达式外层,给CASE补充ELSE 0分支,避免非目标行为返回null导致统计结果不准,同时满足聚合查询语法要求,不加GROUP BY即可直接返回单条汇总值
  • 如果后续需要按维度拆分统计(比如按日期、按会话统计zoom事件量),只需要在WHERE子句后补充对应GROUP BY字段即可,SELECT部分的聚合表达式不需要改动

内容的提问来源于stack exchange,提问作者Elena Epshtein

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 17:57:33