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

PowerBI DAX查询:如何添加Combination表有效期列的过滤条件

DAX查询新增有效期过滤解决方案

你需要在提取Requirement列去重值的环节先对Combination表应用日期过滤规则,可通过新增筛选变量的方式统一处理过滤逻辑,避免重复编写条件,修改后的完整代码如下:

List of Requirement values = 
VAR __MAX_VALUES_TO_SHOW = 90
// 筛选符合条件的Requirement去重值:排除无有效期、有效期早于当前日期的记录
VAR __FILTERED_REQS = CALCULATETABLE(
    VALUES('Combination'[Requirement]),
    NOT(ISBLANK('Combination'[Expiration Date])),
    'Combination'[Expiration Date] >= TODAY()
)
VAR __DISTINCT_VALUES_COUNT = COUNTROWS(__FILTERED_REQS)
RETURN
    IF(
        __DISTINCT_VALUES_COUNT > __MAX_VALUES_TO_SHOW,
        CONCATENATE(
            CONCATENATEX(
                TOPN(
                    __MAX_VALUES_TO_SHOW,
                    __FILTERED_REQS,
                    'Combination'[Requirement],
                    ASC
                ),
                'Combination'[Requirement],
                ", ",
                'Combination'[Requirement],
                ASC
            ),
            ", etc."
        ),
        CONCATENATEX(
            __FILTERED_REQS,
            'Combination'[Requirement],
            ", ",
            'Combination'[Requirement],
            ASC
        )
    )

逻辑说明

  • CALCULATETABLE函数会先对Combination表应用两个过滤规则:
    • 排除Expiration Date为空(无有效期)的行
    • 仅保留Expiration Date大于等于当前日期的行,TODAY()会返回系统当前的日期值,若需要精确到时分秒可替换为NOW()
  • 后续的去重数量统计、TOPN截取、字符串拼接逻辑全部基于筛选后的集合处理,符合业务需求

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 23:27:00