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

Power BI DAX动态集群实现:按日期切片器查询有效合同及房间分类

DAX实现方案

1. 修正选中月份最后一天的度量值

你原逻辑中Datum应为日期表名笔误,修正后:

选中月份最后一天 = 
CALCULATE ( MAX ( 'Date'[Date] ), ALLSELECTED ( 'Date' ) )

该值为所有后续计算的判定基准。

2. 合同有效状态度量值

合同有效状态 = 
VAR 判定日 = [选中月份最后一天]
RETURN
IF (
    SELECTEDVALUE(Contract[ValidFrom]) <= 判定日 && SELECTEDVALUE(Contract[ValidTo]) >= 判定日,
    "是",
    "否"
)

3. 有效房间数量度量值

有效房间数量 = 
VAR 判定日 = [选中月份最后一天]
VAR 当前合同ID = SELECTEDVALUE(Contract[ContractID])
RETURN
CALCULATE (
    MAX(Rooms[Amount]),
    FILTER (
        Rooms,
        Rooms[ContractID] = 当前合同ID
        && Rooms[ValidFrom] <= 判定日
        && Rooms[ValidTo] >= 判定日
    ),
    REMOVEFILTERS('Date')
)

4. 集群区间描述度量值

区间描述 = 
VAR 房间数 = [有效房间数量]
RETURN
CALCULATE (
    MAX(Cluster[RangeDesc]),
    FILTER (
        Cluster,
        Cluster[RangeFrom] <= 房间数
        && Cluster[RangeTo] >= 房间数
    )
)

可视化配置

  • 日期切片器使用Date表的yyyy-mm格式列,设置为单选模式
  • 表格视觉对象添加Contract表的基础字段+上述4个度量值
  • 若仅需展示有效合同,给表格添加筛选条件:合同有效状态 = "是"

效果验证

完全匹配你给出的示例:

  • 切片器选2020-12时,判定日为2020-12-31,匹配到房间数5,区间返回Medium
  • 切片器选2021-02时,判定日为2021-02-28,匹配到房间数6,区间返回Large

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 09:09:03