google-sheets - 按最大时间戳查询 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")
有任何想法吗?
解决方案
看看这是否有效
=ArrayFormula(iferror(vlookup(unique(Sheet1!A2:A), sort({Sheet1!A2:A, Sheet1!E2:E, Sheet1!F2:F }, 3, 0), {1, 2, 3}, 0)))
解释:
- Sort() 根据 F 列对范围进行降序排序
- Unique() 获取唯一 ID
- Vlookup() 查找那些唯一 ID 并返回范围 {Sheet1!A2:A, Sheet1!E2:E, Sheet1!F2:F} 的前三列 {1, 2, 3}(所以 A 中的值, E 和 F)。因为 Vlookup() 只返回第一个匹配,所以会返回时间戳最近的数据。
推荐阅读
- html - 如何将div的末尾定位到容器的左侧
- c# - C# foreach 性能与内存碎片
- javascript - 同时使用和共享公共方法 - 正确的方法?
- javascript - 对 API GATEWAY 的 XMLHttpRequest 不起作用
- python - 如何在 App Engine 中运行 django + 电子邮件处理程序
- .net - 如何根据文件头识别ppt和pptx
- excel - 如何更新列表框中的选定行?
- mysql - 将 varchar 列移动到不同的表并稍后使用连接会提高性能吗?
- javascript - 单击模式对话框中的任何其他位置以关闭下拉列表
- dart - Dart 有无抽象关键字有什么区别?