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

如何基于Location列创建DAX公式生成% Achieved列

基于Location计算% Achieved的DAX公式解决方案

需求说明

创建DAX计算列生成% Achieved列,规则如下:

  • 当Location为EU时,计算逻辑:Actual * Target
  • 当Location为其他区域时,计算逻辑:Actual + Target

背景:Actual与Target数据分属不同数据集,已通过Name和Location建立数据建模关系,使用IF函数尝试实现时出现报错。

数据集

实际值数据集(ActualTable)

NameLocationActual
JohnEU10
JohnASIA4
SteveEU5
SteveASIA87

目标值数据集(TargetTable)

NameLocationTarget
JohnEU5
JohnASIA5
SteveEU7
SteveASIA9

解决方案

报错核心原因通常是未正确跨表引用关联列,需使用RELATED函数获取关联表的对应值。以下是针对ActualTable创建计算列的DAX公式:

% Achieved = 
IF(
    ActualTable[Location] = "EU",
    ActualTable[Actual] * RELATED(TargetTable[Target]),
    ActualTable[Actual] + RELATED(TargetTable[Target])
)

若需在TargetTable中创建该计算列,调整引用方向即可:

% Achieved = 
IF(
    TargetTable[Location] = "EU",
    RELATED(ActualTable[Actual]) * TargetTable[Target],
    RELATED(ActualTable[Actual]) + TargetTable[Target]
)

预期结果

NameLocationActualTarget% Achieved
JohnEU10550
JohnASIA459
SteveEU5735
SteveASIA87996

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 12:25:04