您好我在电源BI中创建角色并按原理代码过滤表 -
例如role1 - 只能看到CKBD,CKRANP,DA原理的数据,因为我正在使用dax函数 -
OR([principlecode] = "CKB" || [principlecode] = "CKBD"|| [principlecode] = "DA")
但它的说法或条件只能有2个参数,有没有办法做到这一点?
谢谢
答案 0 :(得分:0)
好的只需要删除或
([principlecode] = "CKB" || [principlecode] = "CKBD"|| [principlecode] = "DA")
答案 1 :(得分:0)
为清楚起见,DAX为逻辑OR(以及逻辑AND)提供了两个选项:
OR函数正好接受两个参数来执行逻辑OR:
OR([principlecode]="CKB", [principlecode]="CKBD"])
要对您的示例执行此操作,您必须嵌套OR语句,因为DAX不会为函数提供超过2个参数:
OR(OR([principlecode]="CKB", [principlecode]="CKBD"]),[principlecode] = "DA")
非常难看,IMO。请注意,AND运算符具有相同的挑战:
AND(AND(first_boolean, second_boolean), third_boolean)
另一方面,二元运算符 ||在操作数之间执行逻辑OR,并允许链接语句(正如您在自己的答案中指出的那样):
[principlecode] = "CKB" || [principlecode] = "CKBD"|| [principlecode] = "DA"
同样,对于逻辑AND:
first_boolean && second_boolean && third_boolean
我不相信这两种方法之间存在任何性能成本差异。