【问题标题】:Query select by most recent date and group line items按最近日期查询选择并分组行项目
【发布时间】:2022-01-20 06:39:06
【问题描述】:

刚刚发现我的源数据正在从我无法更改的第三方源更新。因此,我的订单文件实际上包含所有订单历史记录,包括数量更新等。

我正在尝试创建一个仅提取最新版本订单的汇总值的工作表。下面的示例是从数据集中实际提取的 - 没有所有额外数据。如您所见,Bill 的订单在发货前更新了 3 次。

我需要对订单号进行分组并仅返回 2021 年 9 月 8 日的最后一次更新。

显然有很多行(17,000 行),确切地说是大约 8000 个订单。大约 10% 的订单是这样更新的。有人对最近日期的分组和报告有什么建议吗?

     A          B      C      D      E
Order Number | Name | Item | QTY | Updated
1001         | Bill | ABC  | 10  | 30/07/2021
1001         | Bill | DEF  | 5   | 30/07/2021
1001         | Bill | GHI  | 5   | 30/07/2021
1001         | Bill | ABC  | 10  | 07/08/2021
1001         | Bill | DEF  | 5   | 07/08/2021
1001         | Bill | GHI  | 7   | 07/08/2021
1001         | Bill | ABC  | 2   | 09/08/2021
1001         | Bill | DEF  | 4   | 09/08/2021
1001         | Bill | GHI  | 2   | 09/08/2021

我想按最后一次更新的订单号对该组进行查询并求和。

对于这个数据子集,结果应该是这样的。

1001 | Bill | 8 | 09/08/2021

=query(Orders!A1:E,"Select A, B, Sum(D), E group by A, B, E Where E = date ‘”&Text(Max(Orders!E:E),"YYY-MM-DD”)&”‘”,1)

我收到一个错误。任何想法?谢谢

【问题讨论】:

    标签: google-sheets google-sheets-formula


    【解决方案1】:

    尝试:

    =QUERY(Orders!A1:E, 
     "select A,B,sum(D),max(E)  
      Where E = date '"&TEXT(MAX(Orders!E:E), "YYYY-MM-DD")&"'
      group by A,B", 1)
    

    【讨论】:

    • 谢谢,成功了!
    猜你喜欢
    • 1970-01-01
    • 2012-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多