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

如何修改DAX的SUMX迭代函数以排除负值时长?

修改DAX度量剔除负时长行

你可以通过在SUMX的迭代逻辑里加入判断,只累加正的时长值,具体修改后的公式如下:

Job_length = 
    SUMX ( 
        jobs , 
        VAR JobDuration = DATEDIFF(jobs[actualstart], jobs[actualend], MINUTE)
        RETURN IF(JobDuration > 0, JobDuration, 0)
    )

逻辑说明

  1. 用VAR定义变量JobDuration,存储当前行的计算时长
  2. 通过IF判断:如果时长为正,就保留该值参与求和;如果是负数或0,就返回0(0不会影响最终求和结果,相当于剔除了负时长的行)

你也可以用MAX函数简化判断逻辑,效果完全一致:

Job_length = 
    SUMX ( 
        jobs , 
        MAX(DATEDIFF(jobs[actualstart], jobs[actualend], MINUTE), 0)
    )

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 00:25:30