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

PowerBI中匹配列值时对比字段的实现方案咨询

解决PowerBI中两表Number&Code匹配对比的需求

嘿,这个需求用PowerBI的DAX计算列就能轻松实现,咱们直接上实操方案:

实现步骤

  1. 打开PowerBI模型视图,选中表2(因为你的期望结果是基于表2的输出)
  2. 在「建模」选项卡中点击「新建列」,输入下面的DAX公式:
Result = 
VAR CurrentNumber = '表2'[Number]
VAR CurrentCode = '表2'[Code]
-- 判断当前Number+Code组合是否在表1中存在
VAR IsCodeMatch = 
    COUNTROWS(
        FILTER('表1', '表1'[Number] = CurrentNumber && '表1'[Code] = CurrentCode)
    ) > 0
-- 判断当前Number是否在表1中存在
VAR IsNumberPresent = 
    COUNTROWS(
        FILTER('表1', '表1'[Number] = CurrentNumber)
    ) > 0
-- 根据条件返回对应结果
RETURN
    SWITCH(
        TRUE(),
        IsCodeMatch, "Matches",
        NOT(IsNumberPresent), "Unknown",
        "Not Matches"
    )

公式逻辑解释

  • 先用VAR定义当前行的Number和Code变量,让后续代码更简洁易读
  • IsCodeMatch:统计表1中与当前行Number和Code完全匹配的行数,只要大于0就说明存在匹配
  • IsNumberPresent:统计表1中存在当前Number的行数,用来区分「Number不存在」的Unknown情况
  • 最后用SWITCH按优先级判断:先看是否完全匹配→再看Number是否不存在→剩下的就是Number存在但Code不匹配的情况

这样生成的Result列就完全符合你想要的输出效果啦!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.07 12:57:32