首页 > 解决方案 > 按最大时间戳查询 Google 表格

问题描述

我正在尝试查询如下所示的时间戳、唯一 ID 和数据列表:

A - 唯一 ID

B,C,D,E - 数据,但只有 E 很重要

F - 时间戳

我想返回 A 和 E,其中 F 是最近的时间戳。

目前我正在使用以下查询,但它返回多个 ID 和时间戳,而不仅仅是 MAX 时间戳:

=QUERY(A:F,"SELECT MAX(F),A,E WHERE E != '' GROUP BY A,E")

有任何想法吗?

标签: google-sheetsgoogle-sheets-query

解决方案


看看这是否有效

=ArrayFormula(iferror(vlookup(unique(Sheet1!A2:A), sort({Sheet1!A2:A, Sheet1!E2:E, Sheet1!F2:F }, 3, 0), {1, 2, 3}, 0)))

解释:

  1. Sort() 根据 F 列对范围进行降序排序
  2. Unique() 获取唯一 ID
  3. Vlookup() 查找那些唯一 ID 并返回范围 {Sheet1!A2:A, Sheet1!E2:E, Sheet1!F2:F} 的前三列 {1, 2, 3}(所以 A 中的值, E 和 F)。因为 Vlookup() 只返回第一个匹配,所以会返回时间戳最近的数据。

推荐阅读