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

如何在Google Sheets中按event_type分组获取最新日期的整行数据

解决Google Sheets按分组获取最新整行数据的问题

你遇到的问题是因为Google Sheets的QUERY函数遵循SQL分组规则:SELECT子句中的列要么出现在GROUP BY里,要么被聚合函数(比如MAX、MIN)包裹。直接添加event_id或event_name会违反这个规则,导致报错。

下面提供两种可行的解决方案,都能获取每个event_type组中日期最新的完整行数据:

方法1:使用QUERY子查询关联

通过将event_type和对应组的最大日期拼接成唯一标识,筛选原表中匹配该标识的行:

=QUERY(data!A:D, "select A,B,C,D where B&D in (select B&max(D) from data!A:D group by B)", 1)
  • 子查询select B&max(D) from data!A:D group by B会生成每个event_type与对应最大日期的拼接字符串(比如critical_event2021/12/25)
  • 外层查询筛选原表中event_type+date_col等于这些拼接值的行,从而得到每组最新日期的完整数据

方法2:使用FILTER+MAXIFS函数

这种方式更直观,利用MAXIFS计算每个event_type对应的最大日期,再用FILTER筛选出匹配的行:

=FILTER(data!A:D, data!D:D=MAXIFS(data!D:D, data!B:B, data!B:B))
  • MAXIFS(data!D:D, data!B:B, data!B:B)会对每行的event_type,计算该组的最大日期
  • FILTER会保留所有日期等于对应组最大日期的行

最终结果(针对你的示例数据)

event_idevent_typeevent_namedate_col
456critical_event事件B2021/12/25
888medium_event事件D2021/12/16

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 07:40:31