Power BI直接查询模式如何统计不同表派生的差值大于零?

How to count differences derived from different tables that are greater than zero in Power BI direct query mode?

我有2张桌子。 TableA显示订阅的ID和每个ID的订阅数量,在TableA中可以重复。

TableB显示取消的ID和每个ID取消的订阅数量,也可以重复。

我的目标是将 Table A 中每个唯一 ID 的数量相加,减去 Table B 中每个唯一 ID 的数量之和。然后用数量计算唯一 ID大于零。

示例:

在此示例中,结果应为 3。

以下测量适用于示例数据。

Distinct IDs with positive Qty =
COUNTROWS (
    SUMMARIZE (
        FILTER (
            ADDCOLUMNS (
                TableA,
                "totQty", CALCULATE ( SUM ( TableA[Qty] ), ALLEXCEPT ( TableA, TableA[ID] ) )
                    - CALCULATE ( SUM ( TableB[Qty] ), FILTER ( TableB, TableB[ID] = TableA[ID] ) )
            ),
            [totQty] > 0
        ),
        [ID]
    )
)

它是这样工作的:

  1. A​​DDCOLUMNS 函数 returns a table 其中将新的 [totQty] 列添加到表 A。在此列中,SUM ( TableB[Qty] ) 从 SUM ( TableA[Qty] ) 中减去 TableA 每一行中的 ([ID])。
  2. FILTER函数过滤前面的table,returns仅过滤[totQty] > 0.
  3. 的行
  4. SUMMARIZE 函数 returns 一个 table 保存一个列,该列具有前一个 table 的 [ID] 列的唯一值。
  5. COUNTROWS 函数然后计算最后一个 table 中的行数。