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

Excel 365 Power Query中Table.Group按两列取最小及多级分组问题

双维度最小行取值方案

原有Table.Group逻辑问题:按Package Name作为分组键会单独计算每个Package对应的最小Units Required和Assessment,不符合全局筛选最小行的需求,可参考以下两种实现:

  • 方案1:排序取首行(逻辑更直观,维护成本低)
let
    源 = #"Previous Step Name",
    // 优先按Units Required升序,次按Assessment升序
    双维度排序 = Table.Sort(源,{{"Units Required", Order.Ascending}, {"Assessment", Order.Ascending}}),
    取最小行 = Table.First(双维度排序),
    输出Package = 取最小行[Package Name]
in
    输出Package
  • 方案2:Table.Group实现
let
    源 = #"Previous Step Name",
    // 空分组键将全表归为同一组,组内排序取首行
    全表分组 = Table.Group(源, {}, {{"最小行", each Table.First(Table.Sort(_, {{"Units Required", Order.Ascending}, {"Assessment", Order.Ascending}}))}}),
    提取Package = 全表分组{0}[最小行][Package Name]
in
    提取Package
两层嵌套分组实现

单个Table.Group可以实现两层分组需求,两种场景写法如下:

  • 场景1:按Package Name+Column X组合分组,每个组合对应一个嵌套表
let
    源 = #"Previous Step Name",
    两层分组 = Table.Group(
        源, 
        {"Package Name", "Column X"}, 
        {{"分组明细", each _}}
    )
in
    两层分组
  • 场景2:按Package Name一级分组,每个Package下嵌套所有Column X的二级分组结果
let
    源 = #"Previous Step Name",
    嵌套分组 = Table.Group(
        源,
        {"Package Name"},
        {{"Column X子分组", each Table.Group(_, {"Column X"}, {{"子组明细", each _}})}}
    )
in
    嵌套分组

内容的提问来源于stack exchange,提问作者The Frog

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.14 12:15:03