我在这种情况下是否使用“计算”​​之间有区别?

时间:2019-10-03 12:18:45

标签: powerbi dax

M-CY_Growth% = calculate([M-CY_Growth]/abs([M-PY_Sales]))

等于使用还是不计算?

3 个答案:

答案 0 :(得分:1)

假设[M-CY_Growth][M-PY_Sales]是度量,则应该没有区别。

摘自 DAX权威指南 ,第5章,了解使用度量的上下文转换部分:

  

无论何时从另一个表达式内部调用度量,DAX都会自动将度量封装在 CALCULATE 中。

答案 1 :(得分:0)

应该没有区别。实际上,在大多数情况下,调用度量时,它会隐式包装在计算中。

答案 2 :(得分:0)

据我所知,除非您传递“ filter”参数,否则将表达式传递给CALCULATE函数并在CALCULATE函数之外评估该表达式没有区别。在这种情况下,因为没有将过滤器参数传递给CALCULATE函数,所以没有理由使用它。

CALCULATE被设计为使您可以控制在其中计算表达式的上下文。您可以通过将一个过滤器传递给CALCULATE函数来执行此操作,否则该表达式在计算表达式时就不会考虑。相反,您可以使用CALCULATE函数来忽略在计算表达式时本应考虑的过滤器。

此功能的Microsoft文档文章提供了更多信息,以及上述后一种情况的示例:https://docs.microsoft.com/en-us/dax/calculate-function-dax