如何在Power BI的DAX中编写符合指定规则的IF语句?
在Power BI的DAX中实现指定数值分类的IF语句
直接用嵌套IF就能实现你的需求,注意数值5的优先级——因为它同时属于两个区间,必须先判断1-5的规则,避免被错误归类:
分类结果 = IF( [你的数值列] >= 1 && [你的数值列] <= 5, "Inadmissible", IF( [你的数值列] = 26, "Medical reasons", IF( ([你的数值列] >= 5 && [你的数值列] <= 25) || [你的数值列] IN {27,28}, "Family reasons", BLANK() // 不在规则内的数值返回空,可改成你需要的默认文本 ) ) )
逻辑说明:
- 第一层IF先锁定1-5的数值,返回"Inadmissible",确保数值5不会被后续规则覆盖
- 第二层IF单独判断26,直接返回"Medical reasons"
- 第三层IF处理剩下的符合条件的数值:6-25(5已经被第一层过滤)、27和28,返回"Family reasons"
- 最后用
BLANK()处理不在规则内的数值,你可以根据需求替换成比如"未分类"这类文本
如果是做度量值,把[你的数值列]换成SELECTEDVALUE('你的表名'[数值列])即可,适配报表交互场景。
内容的提问来源于stack exchange,提问作者Sewa
相关产品推荐
相关产品推荐

