SUMX 为所有行提供相同的值

问题描述

我有一个事实表,其中包含数量、单价等列。我正在尝试使用 SUMX 公式计算收入,但我得到的所有记录的值都相同。由于这个原因,我还在其他列中遇到了依赖项错误代码如下:

SUMX(
    '''Sales Details$''','''Sales Details$'''[Quantity]*'''Sales Details$'''[Unit Price]
)

enter image description here

这个表是从SSMS导入的,VS2019的表格模型分析服务。 我想在这里了解一些事情-

  1. 为什么我们必须在 3 引号内提供一个表格? DAX 柱不会在没有在 3 引号下指定它们的情况下获取表格。
  2. SUMX 不应为所有记录计算相同的值。但它出于未知原因出现在这里
  3. 如果我尝试将上层代码中的 [Unit Price] 替换为 [Unit Cost],那么我会在新列中收到依赖项错误。据我所知,我没有使用会产生循环依赖的 CALculaTE 函数,并且 SUMX 不会将过滤器放在列上,[数量] 在这里

解决方法

  1. 我认为是因为表名有空格。当表名有空格或不允许的字符时,它位于两个单引号之间:""

  2. 如果我没记错的话(我对 DAX 也很陌生),SUMX 就像 Excel 中的 sumproduct。它计算每行的单价 * 数量,然后对所有行求和,打破行上下文。如果要计算每行的数量,只需执行价格 * 数量,无需 SUMX。

  3. 我不知道,抱歉。