dax 过滤器产生不同的结果
dax filters producing different results
你能告诉我为什么这两种措施会产生不同的结果吗?我很明显缺少一些简单的 AND 和 OR 操作。谢谢。
measure 1 = CALCULATE (
COUNT ( fct_core[colour] ),
fct_core[type] = 1
|| fct_core[type] = 2
|| fct_core[type] = 3
&& fct_core[colour] = 5
|| fct_core[colour] = 6
|| fct_core[colour] = 7
|| fct_core[colour] = 8
)
measure 2 = CALCULATE (
COUNT ( fct_core[colour] ),
fct_core[type] >= 1
&& fct_core[type] <= 3
&& fct_core[colour] = 5
|| fct_core[colour] = 6
|| fct_core[colour] = 7
|| fct_core[colour] = 8
)
这是一个order of operations误会。
如果放在适当的括号中,那么这些度量应该是相同的(假设类型只有整数值)。
measure 1 =
CALCULATE (
COUNT ( fct_core[colour] ),
(
fct_core[type] = 1 ||
fct_core[type] = 2 ||
fct_core[type] = 3
)
&&
(
fct_core[colour] = 5 ||
fct_core[colour] = 6 ||
fct_core[colour] = 7 ||
fct_core[colour] = 8
)
)
measure 2 =
CALCULATE (
COUNT ( fct_core[colour] ),
(
fct_core[type] >= 1 &&
fct_core[type] <= 3
)
&&
(
fct_core[colour] = 5 ||
fct_core[colour] = 6 ||
fct_core[colour] = 7 ||
fct_core[colour] = 8
)
)
你能告诉我为什么这两种措施会产生不同的结果吗?我很明显缺少一些简单的 AND 和 OR 操作。谢谢。
measure 1 = CALCULATE (
COUNT ( fct_core[colour] ),
fct_core[type] = 1
|| fct_core[type] = 2
|| fct_core[type] = 3
&& fct_core[colour] = 5
|| fct_core[colour] = 6
|| fct_core[colour] = 7
|| fct_core[colour] = 8
)
measure 2 = CALCULATE (
COUNT ( fct_core[colour] ),
fct_core[type] >= 1
&& fct_core[type] <= 3
&& fct_core[colour] = 5
|| fct_core[colour] = 6
|| fct_core[colour] = 7
|| fct_core[colour] = 8
)
这是一个order of operations误会。
如果放在适当的括号中,那么这些度量应该是相同的(假设类型只有整数值)。
measure 1 =
CALCULATE (
COUNT ( fct_core[colour] ),
(
fct_core[type] = 1 ||
fct_core[type] = 2 ||
fct_core[type] = 3
)
&&
(
fct_core[colour] = 5 ||
fct_core[colour] = 6 ||
fct_core[colour] = 7 ||
fct_core[colour] = 8
)
)
measure 2 =
CALCULATE (
COUNT ( fct_core[colour] ),
(
fct_core[type] >= 1 &&
fct_core[type] <= 3
)
&&
(
fct_core[colour] = 5 ||
fct_core[colour] = 6 ||
fct_core[colour] = 7 ||
fct_core[colour] = 8
)
)