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

Power BI中如何按日期切换不同表的佣金生成新列?

解决方案

方法一:利用表关系(推荐)

如果SALES表和CATEGORY表已经通过「类别+产品」建立一对多关系(CATEGORY为一端,SALES为多端),直接在SALES表中新建计算列,用RELATED函数关联佣金字段,配合IF做日期判断:

Prod_commission = 
IF(
    SALES[日期] <= DATE(2022, 6, 30),
    RELATED(CATEGORY[commission_2]),
    RELATED(CATEGORY[commission_1])
)

方法二:无表关系时用LOOKUPVALUE

如果未建立表关系,直接在IF分支里分别调用LOOKUPVALUE匹配对应佣金:

Prod_commission = 
IF(
    SALES[日期] <= DATE(2022, 6, 30),
    LOOKUPVALUE(CATEGORY[commission_2], CATEGORY[类别], SALES[类别], CATEGORY[产品], SALES[产品]),
    LOOKUPVALUE(CATEGORY[commission_1], CATEGORY[类别], SALES[类别], CATEGORY[产品], SALES[产品])
)

关键说明

  • 不用DATEBETWEEN的原因:该函数是用于筛选上下文的工具(多用于度量值),计算列中直接做日期大小比较更简洁直接。
  • 确保CATEGORY表中「类别+产品」是唯一组合,避免LOOKUPVALUE因多匹配结果报错(你之前用该函数成功,说明数据本身符合唯一性要求)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 16:50:25