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

Google Sheets查询结果添加2个计算列的技术实现求助

Google Sheets QUERY 公式解决方案

要在单个QUERY公式内实现分组求和并新增Travel和Profit计算列,需修正核心语法问题并调整计算逻辑:

  1. QUERY语言不支持原生IF函数,需改用CASE WHEN进行条件判断
  2. 需先基于数值计算Travel金额(避免字符串无法参与Profit运算),再格式化显示为带£的格式

正确公式

=QUERY(Data!A:C, 
"SELECT A, B, SUM(C), 
TEXT(CASE WHEN B='Place 1' THEN 10 WHEN B='Place 2' THEN 20 WHEN B='Place 3' THEN 30 ELSE 0 END, '£0'), 
SUM(C)-CASE WHEN B='Place 1' THEN 10 WHEN B='Place 2' THEN 20 WHEN B='Place 3' THEN 30 ELSE 0 END 
WHERE A IS NOT NULL 
GROUP BY A, B 
ORDER BY A ASC 
LABEL A 'Date', B 'Customer', SUM(C) 'Total', 
TEXT(CASE WHEN B='Place 1' THEN 10 WHEN B='Place 2' THEN 20 WHEN B='Place 3' THEN 30 ELSE 0 END, '£0') 'Travel', 
SUM(C)-CASE WHEN B='Place 1' THEN 10 WHEN B='Place 2' THEN 20 WHEN B='Place 3' THEN 30 ELSE 0 END 'Profit'
")

关键逻辑说明

  • Travel列:通过CASE WHEN匹配客户名称返回对应数值,再用TEXT函数格式化为£X的显示样式,兼顾显示效果和后续运算需求
  • Profit列:直接用分组求和后的Total值减去Travel的数值结果,确保运算逻辑准确
  • 保留原有分组(GROUP BY A,B)和排序规则,通过LABEL参数统一设置列标题

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 16:03:27