Verwenden von COUNTROWS anstelle von COUNT

Als Datenmodellierer müssen Sie ggf. in manchen Fällen einen DAX-Ausdruck zum Zählen von Tabellenzeilen schreiben. Die Tabelle kann eine Modelltabelle oder ein Ausdruck sein, der eine Tabelle zurückgibt.

Ihre Anforderung kann auf zwei Arten erfüllt werden. Sie können die Funktion COUNT verwenden, um Spaltenwerte zu zählen, oder Sie können die Funktion COUNTROWS verwenden, um Tabellenzeilen zu zählen. Beide Funktionen erzielen dasselbe Ergebnis, vorausgesetzt, dass die gezählte Spalte keine BLANKs enthält.

Die folgende Measuredefinition stellt ein Beispiel dar. Sie berechnet die Anzahl der OrderDate-Spaltenwerte.

Sales Orders =
COUNT(Sales[OrderDate])

Wenn die Granularität der Sales-Tabelle eine Zeile pro Verkaufsauftrag beträgt und die OrderDate-Spalte keine BLANKS enthält, gibt das Measure ein korrektes Ergebnis zurück.

Die folgende Measuredefinition ist jedoch eine bessere Lösung.

Sales Orders =
COUNTROWS(Sales)

Es gibt drei Gründe, warum die zweite Measuredefinition besser ist:

  • Sie ist effizienter und funktioniert deshalb besser.
  • BLANKS, die in einer Spalte der Tabelle enthalten sind, werden nicht berücksichtigt.
  • Die Absicht der Formel ist eindeutiger bzw. sogar selbstbeschreibend.

Empfehlung

Wenn Sie Tabellenzeilen zählen möchten, empfiehlt es sich, immer die COUNTROWS-Funktion zu verwenden.