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

如何在Google Sheets Query中合并Sheet2数据且仅对Sheet1应用Lambda条件

Google Sheets 多表Query分组求和:仅对指定表应用Lambda条件处理

问题核心

需要在Sheet3中用query函数合并Sheet1和Sheet2的Serial Number、Value数据,按序列号分组求和,且仅对Sheet1的数据应用Lambda条件(当C列为"yes"时数值加1),Sheet2的数据保持原始值。

解决方案

直接将Sheet1处理后的完整两列数据与Sheet2的原始两列数据纵向合并为一个数组,再传入query函数即可。修正后的公式如下:

=query(
  {
    Sheet1!A2:A, MAP(Sheet1!B2:B,Sheet1!C2:C, LAMBDA(v,c, IF(c="yes", v+1, v)));
    Sheet2!A2:A, Sheet2!B2:B
  },
  "select Col1, sum(Col2) where Col1 is not null group by Col1 label Col1 'Serial Number', sum(Col2) 'Value'"
)

关键说明

  • 数组{数据集1;数据集2}实现纵向合并,必须保证两个数据集的列数一致(均为2列),这是之前直接合并单列报错的核心原因。
  • 第一部分数据集:Sheet1的序列号列(A2:A)+ 经过Lambda条件处理的值列,保留原有的逻辑。
  • 第二部分数据集:Sheet2的序列号列(A2:A)+ 原始值列(B2:B),不做任何额外处理。
  • query函数会对合并后的完整数组进行分组求和,自动将同序列号的Sheet1处理后数值与Sheet2原始数值累加。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 11:17:11