【问题标题】:Conditional distinct count based on a measure in DAX基于 DAX 中的度量的条件非重复计数
【发布时间】:2015-06-08 00:40:13
【问题描述】:

我正在尝试使用 DAX 执行此操作,但无法获得正确的不同计数...

AccountID   OrderDate   Product     SalesAmount DiscountAmount
1023        Nov-14      Product001  $0          $5.00
1045        Nov-14      Product001  $30.00  $10.00
1023        Nov-14      Product002  $1.00       $0  
1089        Nov-14      Product001  $0          $5.00
2045        Nov-14      Product001  $50.00  $25.00
1045        Nov-14      Product001  $(30.00)    $0 

Q1. 我如何计算总销售额为 0 美元的不同客户(答案是 2、1045、1089) - 请参阅此处我想忽略 1023,因为该帐户的总销售额为不是 0 美元。

我尝试创建一个度量:

TotalCustomers:=CALCULATE(DISTINCTCOUNT(Table1[AccountID]), 'Table1')

然后加上这个:

ZeroCustomers:=CALCULATE([TotalCustomers], FILTER('Table1', [Sum of SalesAmount]<>0))

但是帐户 1023 被计算在内,我得到 ZeroCutomers 的“3”

Q2。我如何为总销售额为 0 美元的客户添加 DiscountAmount(答案为 15 美元)

这是对 Q1 的扩展——一旦我弄清楚了 Q1——我可能会弄清楚这个。

我的另一个选择是创建一个已经按 AccountID 汇总的新表 - 但是我将无法使用切片器,因为我仍然想按产品和其他维度进行切片。

任何帮助将不胜感激!

谢谢!

【问题讨论】:

    标签: ssas dax ssas-tabular bism


    【解决方案1】:

    怎么样:

    ZeroCustomers:=CALCULATE(DISTINCTCOUNT(Table1[AccountID]), ALL(Table1), [Sum of SalesAmount]&lt;&gt;0))

    ZeroCustomersDiscount:=CALCULATE(SUM([DiscountAmount]), ALL(Table1), [Sum of SalesAmount]&lt;&gt;0))

    我认为由于 DAX 处理过滤器和分组的方式,您之前的尝试没有奏效。我希望我能给你一个更详细的解释,但我自己还在学习。

    【讨论】:

      【解决方案2】:

      我可能已经明白了:

      第一季度

      ZeroCustomers:=COUNTROWS (
          FILTER (
              ADDCOLUMNS (
                  VALUES ( Table1[AccountID] ),
                  "TotalSalesAmount", CALCULATE ( SUM ( [SalesAmount] ) )
              ),
              [TotalSalesAmount] = 0
          )
      )
      

      第二季度

      ZeroCustomerDiscount:=CALCULATE(SUM([DiscountAmount]),
          FILTER (
              ADDCOLUMNS (
                  VALUES ( Table1[AccountID] ),
                  "TotalSalesAmount", CALCULATE ( SUM ( [SalesAmount] ) )
              ),
              [TotalSalesAmount] = 0
          )
      )
      

      如果您有更好的方法来完成同样的事情,请发表评论/回复。 希望这对其他人有帮助!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-11-14
        • 1970-01-01
        • 2018-09-16
        • 1970-01-01
        • 2013-09-12
        相关资源
        最近更新 更多