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

从含多值的现有列创建新列:多值行映射为指定单一值

解决DAX多值行映射到单一指定值的问题

针对你需要将包含多值的行映射为指定单一值的需求,这里提供两种可行的DAX计算列写法,解决你之前IF ELSE语句未达成目标的问题:

方案1:嵌套IF逻辑(适合少量匹配规则)

映射结果列 = 
VAR 当前值 = '你的表名'['原多值列']
RETURN
    // 优先匹配优先级最高的目标值,顺序不能乱
    IF(CONTAINSSTRING(当前值, "Hovedsertifisør"), "Hovedsertifisør",
        IF(CONTAINSSTRING(当前值, "Hovedkonsulent"), "Hovedkonsulent",
            IF(CONTAINSSTRING(当前值, "Konsulent"), "Konsulent",
                // 无匹配值时返回原内容,也可改为固定默认值
                当前值
            )
        )
    )

方案2:SWITCH函数(适合多规则,代码更易读)

映射结果列 = 
VAR 当前值 = '你的表名'['原多值列']
RETURN
    SWITCH(TRUE(),
        CONTAINSSTRING(当前值, "Hovedsertifisør"), "Hovedsertifisør",
        CONTAINSSTRING(当前值, "Hovedkonsulent"), "Hovedkonsulent",
        CONTAINSSTRING(当前值, "Konsulent"), "Konsulent",
        // 无匹配时的默认返回值
        当前值
    )

关键说明

  1. 优先级顺序:必须将优先级最高的匹配规则放在最前面(比如你需求中的Hovedsertifisør),确保只要行中包含该值,就会优先返回它,不受其他值影响。
  2. 大小写处理:CONTAINSSTRING不区分大小写,能匹配你例子中混合大小写的konsulent和Konsulent;如果需要严格区分大小写,替换为CONTAINSSTRINGEXACT即可。
  3. 替换占位符:记得把代码中的你的表名和原多值列换成你实际使用的表名和列名。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 00:35:29