使用谷歌表格查询功能来过滤列表中的唯一值

问题描述 投票:0回答:1

我正在尝试整理库存表,但需要一些建议。我有一个定期发送数据的网络钩子。该表的链接位于此处。在源数据库中,我将更新不同的数据字段,然后 Webhook 发送记录(包括任何更改)以及时间戳。

我试图返回整行,仅返回最近的条目(基于 timestamp_incoming_webhook),并根据 data_inventory_item_serial_number 过滤重复项。我正在努力使用单个(或一系列)命令中的查询功能来做到这一点。

比如说我可以做

=query(FilterToAntibodyFlow!A:I, "select A,B,D,E,F,G,H,I,max(C) WHERE B <> '' group by A,B,D,E,F,G,H,I label max(C)'timestamp_incoming_webhook'",1)

但这不再正确过滤 B 列 (data_inventory_item_serial_number) 中的重复项。例如,第 5 行和第 6 行是重复的。

screenshot of the output of the query function

但是如果我只做

group by B
,那么过滤是准确的,但我不会取回其他数据列。如何获取最近更改版本的完整记录?

google-sheets google-sheets-formula google-query-language
1个回答
0
投票

您可以尝试:

=let(Σ,reduce(FilterToAntibodyFlow!A1:I1,unique(tocol(FilterToAntibodyFlow!B2:B,1)),lambda(a,c,vstack(a,chooserows(sort(filter(FilterToAntibodyFlow!A:I,FilterToAntibodyFlow!B:B=c),3,),1)))),
 choosecols(Σ,1,2,4,5,6,7,8,9,3))

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.