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

Google Sheets QUERY函数添加WHERE子句报错求助

Google Sheets QUERY函数添加WHERE子句的正确方法

原需求:使用QUERY函数从earnings标签页导入A-J列数据,基于C列(日期)生成Year和Month两列,原可正常运行的公式:

=QUERY(earnings!A:J, "SELECT A, B, C, YEAR(C), toDate(C) label YEAR(C) 'Year', toDate(C) 'Month' format toDate(C) 'MMM'", 1)

尝试添加WHERE子句过滤Area为Brooklyn的行时出现解析错误,错误公式:

=QUERY(earnings!A:J, "SELECT A, B, C, YEAR(C), toDate(C) label YEAR(C) 'Year', toDate(C) 'Month' format toDate(C) 'MMM' where A = 'Brooklyn'", 1)

错误提示:

Unable to parse query string for Function QUERY parameter 2: PARSE_ERROR: Encountered " "where" "where "" at line 1, column 120. Was expecting one of: "options" ... "," ...

问题原因

Google Sheets QUERY的类SQL语法有严格的顺序要求,正确执行顺序为:
SELECT → WHERE → GROUP BY → ORDER BY → LABEL → FORMAT

你将WHERE子句放在了LABEL和FORMAT之后,违反了语法顺序,导致解析失败。

正确公式

将WHERE子句移至SELECT之后、LABEL之前:

=QUERY(earnings!A:J, "SELECT A, B, C, YEAR(C), toDate(C) WHERE A = 'Brooklyn' label YEAR(C) 'Year', toDate(C) 'Month' format toDate(C) 'MMM'", 1)

验证说明

针对以下数据结构:

AreaAmountDate
Brooklyn$50001/02/2025
Chicago$60001/03/2025
Huston$70001/04/2025

使用正确公式后,将仅返回Brooklyn的行,并正确生成Year(2025)和Month(Feb)列。

内容的提问来源于stack exchange,提问作者martin schwartz

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 18:14:52