使用 COUNTROWS 而非 COUNT

身為資料建模者,有時候您可能需要撰寫可計算資料表資料列的 DAX 運算式。 而該資料表可能為模型資料表或傳回資料表的運算式。

您的需求可透過兩種方式來達成。 您可以使用 COUNT 函式來計算資料行值,也可以使用 COUNTROWS 函式來計算資料表資料列。 只要計算的資料行不包含 BLANK,則這兩個函式就會有相同的結果。

下列量值定義會提供範例。 其會計算 OrderDate 資料行值的數目。

Sales Orders =
COUNT(Sales[OrderDate])

假設 Sales 資料表的資料粒度為每筆銷售訂單有一個資料列,且 OrderDate 資料行不包含 BLANK,則該量值便會傳回正確的結果。

不過,下列量值定義會提供更佳的解決方案。

Sales Orders =
COUNTROWS(Sales)

第二個量值定義較佳的原因有三個:

  • 效率更高,因此效能會更好。
  • 該量值定義不會考慮資料表中的任何資料行所包含的 BLANK。
  • 公式的目的因其名稱可一目瞭然而更加清楚。

建議

當您想要計算資料表資料列時,建議您一律使用 COUNTROWS 函式。