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

如何用Google Sheets Query函数筛选最新日期的最后一行数据

Google Sheets Query函数实现指定筛选规则

需求匹配方案

要搞定「单日期只有一行就留着,有多行就取最新日期的最后一行」这个需求,之前直接用limit 1加offset 1会丢单条数据(比如Lucy那行),得换个嵌套Query的思路,既保证效率又兼容所有情况。

可用公式(假设数据在A:D列,表头行是第1行)

=QUERY(
  QUERY(A:D, "SELECT * ORDER BY A DESC", 1),
  "SELECT * WHERE A = '"&INDEX(QUERY(A:D, "SELECT MAX(A)", 1),2,1)&"' LIMIT 1 OFFSET "&COUNTA(QUERY(A:D, "SELECT A WHERE A = '"&INDEX(QUERY(A:D, "SELECT MAX(A)", 1),2,1)&"'", 1))-1&"",
  1
)

公式逐段解释

  • 内层排序Query:QUERY(A:D, "SELECT * ORDER BY A DESC", 1)
    先把所有数据按日期(A列)从新到旧排好,方便后续定位最新日期
  • 抓取最新日期:INDEX(QUERY(A:D, "SELECT MAX(A)", 1),2,1)
    用MAX(A)直接拿到最新的日期值,再通过INDEX把结果从查询返回的表格里提取出来
  • 计算最新日期的行数:COUNTA(QUERY(A:D, "SELECT A WHERE A = '"&最新日期&"'", 1))
    统计这个最新日期下一共有多少行数据,偏移量就用「行数-1」来定位最后一行
  • 外层筛选Query:把最新日期的所有行筛出来,再通过OFFSET 行数-1加LIMIT 1精准挑出最后一行

兼容单条数据的逻辑

如果最新日期下只有1条数据,COUNTA返回1,OFFSET 0配合LIMIT 1就会直接保留这唯一的一行,不会出现数据丢失的情况。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 16:02:07