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

Power Query中筛选指定Job ID对应Type=C之后至目标日期数据的方法

Power Query 完成需求的后续操作步骤

1. 添加日期辅助列

为了方便时间先后的比较,先给表格新增一个Date列:

  • 点击「添加列」→「自定义列」,输入公式:
    #date([Year], [Month], 1)
    
    将年份和月份转换为当月第一天的日期格式,便于后续判断时间顺序。

2. 标记每个Job ID的最晚Type=C时间点

针对每个Job ID,找出它所有行里Type=C的最晚日期:

  • 再添加一个自定义列(命名为TypeC_Latest),输入公式:
    List.Max(Table.SelectRows(你的原始表名, (row) => row[Job ID] = [Job ID] and row[Type] = "C")[Date])
    
    注:把公式里的「你的原始表名」替换为实际的原始数据表名称。如果某个Job ID没有Type=C的行,该列会显示null,后续筛选逻辑会自动跳过这类行的额外判断。

3. 筛选符合要求的行

现在需要保留两类行:

  • 第一类:2024年3月的目标行(即你最初筛选出的那批条目);
  • 第二类:当前行的日期晚于对应Job ID的最晚Type=C日期,且本身不是Type=C的行。

操作步骤:

  • 点击「开始」→「筛选行」→「自定义筛选」,输入筛选逻辑:
    ([Year] = 2024 and [Month] = 3) or ([Date] > [TypeC_Latest] and [Type] <> "C")
    

4. 清理冗余列

最后删除之前添加的Date和TypeC_Latest两个辅助列,只保留Job ID、Year、Month、Value、Type这些需要的列即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 16:19:51