Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powerbi 在这种情况下,是否使用“计算”有区别?_Powerbi_Dax - Fatal编程技术网

Powerbi 在这种情况下,是否使用“计算”有区别?

Powerbi 在这种情况下,是否使用“计算”有区别?,powerbi,dax,Powerbi,Dax,等于使用还是不计算?应该没有区别。事实上,在大多数情况下,当一个度量值被调用时,它被隐式地包装在calculate中。假设[M-CY_Growth]和[M-PY_Sales]是度量值,应该没有区别 从《DAX最终指南》第5章“理解环境转换与措施”一节: 无论何时从另一个表达式中调用度量值,DAX都会自动将度量值封装在CALCULATE中 就我所知,除非传递一个过滤器参数,否则将表达式传递给CALCULATE函数和在CALCULATE函数之外对该表达式求值是没有区别的。在这种情况下,因为您没有将筛

等于使用还是不计算?

应该没有区别。事实上,在大多数情况下,当一个度量值被调用时,它被隐式地包装在calculate中。

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

从《DAX最终指南》第5章“理解环境转换与措施”一节:

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


就我所知,除非传递一个过滤器参数,否则将表达式传递给CALCULATE函数和在CALCULATE函数之外对该表达式求值是没有区别的。在这种情况下,因为您没有将筛选器参数传递给CALCULATE函数,所以没有理由使用它

CALCULATE的设计目的是让您能够对表达式求值的上下文进行某种控制。您可以通过向CALCULATE函数传递一个过滤器来实现这一点,否则在表达式求值期间将不会考虑该过滤器。相反,您可以使用CALCULATE函数忽略在表达式求值期间本应考虑的过滤器

有关该函数的Microsoft Docs文章提供了更多信息,以及上述后一种情况的示例:

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