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

如何在Google Sheets QUERY函数中用SUM()过滤无效数据及工时不足10的员工?

Google Sheets QUERY函数优化方案

问题分析

当前统计员工营收的QUERY函数返回了两类无效数据:包含"Online Sales"未关联人员项,以及总工时不足10小时的员工。之前尝试的WHERE SUM(O) > 10、GROUP BY F AND SUM(O) > 10写法不符合Google Sheets QUERY语法规范,因此被系统拒绝。

修改后的完整公式

=QUERY(Master!A2:O, "SELECT F, SUM(O), SUM(G) 
 WHERE A >= date '" & text(D3,"yyyy-MM-dd") & "' and A <= date '" & text(D5,"yyyy-MM-dd") & "' 
 AND UPPER(F) contains '"&$L3&"' 
 AND UPPER(D) contains '"&$L5&"' 
 AND UPPER(F) != 'ONLINE SALES' 
 GROUP BY F 
 HAVING SUM(O) > 10 
 ORDER BY SUM(G) DESC 
 LABEL SUM(G) 'Revenue', SUM(O) 'Work Hours', F 'Employee'")

修改说明

  1. 过滤"Online Sales"无效项:在WHERE子句中新增AND UPPER(F) != 'ONLINE SALES',在分组前直接排除这条无效数据,避免不必要的聚合计算。
  2. 筛选工时达标员工:在GROUP BY F之后添加HAVING SUM(O) > 10——HAVING是Google Sheets QUERY中专门用于过滤聚合后分组结果的关键字,这是处理聚合条件的正确语法。

常见错误原因

  • WHERE SUM(O) > 10错误:WHERE仅能过滤原始行数据,无法使用SUM这类聚合函数(聚合结果在分组后才生成)。
  • GROUP BY F AND SUM(O) > 10错误:GROUP BY后不能直接用AND追加聚合条件,必须使用HAVING关键字声明分组过滤规则。

内容的提问来源于stack exchange,提问作者Stefan Meier

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 17:05:20