Power BI中基于两列多条件使用DAX实现Switch语句生成计算列
DAX 计算列实现方案
代码实现
Result = SWITCH ( [A], "DNK", IF ( [B] = "NA", "XX", IF ( UPPER([B]) = "APPLE", "OK", "NOT OK" ) ), "ADNK", IF ( [B] = "NA", "XX", IF ( UPPER([B]) = "ORANGE", "OK", "NOT OK" ) ), "BJB", IF ( [B] = "NA", "XX", IF ( [B] = "Apple1", "OK", "NOT OK" ) ), "" // 可自定义A列不在规则范围内时的返回值 )
相关说明
- 代码默认适配你样例中的文本类型
NA,如果你的B列空值是DAX原生空值,把判断条件里的"NA"替换为BLANK()即可 - 前两个判断加了
UPPER()函数做统一大写转换,适配样例里全大写的APPLE、ORANGE取值,如果你需要严格区分大小写,可以去掉UPPER()并改用EXACT()函数做精确匹配 - 代码最后一行的空字符串为A列值不在
DNK/ADNK/BJB三个规则范围内的默认返回值,可根据实际需求自行修改
内容的提问来源于stack exchange,提问作者johon
相关产品推荐
相关产品推荐

