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

DAX计算列开发求助:基于最新日期匹配另一表对应值

DAX计算列:获取对应ID的最新日期匹配值

可以用以下DAX公式创建Table A的计算列,实现需求:

Latest Wanted Value = 
VAR CurrentAID = 'Table A'[PK]
VAR MaxDateForAID = 
    CALCULATE(
        MAX('Table B'[Date param]),
        'Table B'[Table A ID] = CurrentAID
    )
RETURN
    CALCULATE(
        VALUES('Table B'[Wanted Value]),
        'Table B'[Table A ID] = CurrentAID,
        'Table B'[Date param] = MaxDateForAID
    )

逻辑说明

  1. CurrentAID:捕获当前Table A行的PK值,作为匹配Table B的关联条件。
  2. MaxDateForAID:通过CALCULATE筛选出当前ID对应的Table B中最新的Date param日期。
  3. 最终返回:再次筛选Table B,匹配当前ID和最新日期,用VALUES提取对应的Wanted Value(确保返回单个值)。

特殊情况处理

如果Table B中存在同一Table A ID + 同一最新Date param对应多个不同Wanted Value的情况,VALUES会返回错误。此时可以改用MAX或MIN来获取唯一值,调整后的公式如下:

Latest Wanted Value = 
VAR CurrentAID = 'Table A'[PK]
VAR MaxDateForAID = 
    CALCULATE(
        MAX('Table B'[Date param]),
        'Table B'[Table A ID] = CurrentAID
    )
RETURN
    CALCULATE(
        MAX('Table B'[Wanted Value]), -- 或MIN,根据业务需求选择
        'Table B'[Table A ID] = CurrentAID,
        'Table B'[Date param] = MaxDateForAID
    )

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 10:58:21