Freigeben über


FILTER

Gilt für:Berechnete SpalteBerechnete TabelleMeasureVisuelle Berechnung

Gibt eine Tabelle zurück, die eine Teilmenge einer anderen Tabelle oder eines anderen Ausdrucks repräsentiert.

Syntax

FILTER(<table>,<filter>)  

Parameter

Begriff Definition
table Die zu filternde Tabelle. Die Tabelle kann auch ein Ausdruck mit einer Tabelle als Ergebnis sein.
filter Ein boolescher Ausdruck, der für jede Zeile der Tabelle ausgewertet werden muss. Beispiel: [Amount] > 0 oder [Region] = "France"

Rückgabewert

Eine Tabelle, die nur die gefilterten Zeilen enthält.

Bemerkungen

  • Sie können mithilfe von FILTER die Anzahl von Zeilen in der Tabelle, in der Sie arbeiten, verringern und nur bestimmte Daten für Berechnungen verwenden. FILTER wird nicht unabhängig verwendet, sondern als Funktion, die in andere Funktionen eingebettet ist, die eine Tabelle als Argument benötigen.

  • Bewährte Methoden für die Verwendung von FILTER finden Sie unter Vermeiden der Verwendung von FILTER als Filterargument.

Verwenden von COUNTROWS anstelle von COUNT in DAX

  • Die Verwendung dieser Funktion im DirectQuery-Modus wird nicht unterstützt, wenn sie in berechneten Spalten oder RLS-Regeln (Row-Level Security) eingesetzt wird.

Beispiel

Im folgenden Beispiel wird ein Bericht über Internetverkäufe außerhalb der Vereinigten Staaten erstellt. Hierzu wird ein Measure verwendet, das den Umsatz in den Vereinigten Staaten herausfiltert und dann nach Kalenderjahr und Produktkategorien sortiert. Um dieses Measure zu erstellen, filtern Sie die Tabelle mit Internetverkäufen in USD nach Verkaufsgebiet und verwenden die gefilterte Tabelle dann in einer SUMX-Funktion.

In diesem Beispiel gibt der Ausdruck:

FILTER('InternetSales_USD', RELATED('SalesTerritory'[SalesTerritoryCountry])<>"United States")

Eine Tabelle zurück, die eine Teilmenge von „InternetSales“ abzüglich aller Zeilen ist, die zum Vertriebsgebiet „Vereinigte Staaten“ gehören. Die Funktion RELATED verknüpft den Gebietsschlüssel in der InternetSales-Tabelle mit „SalesTerritoryCountry“ in der Tabelle „SalesTerritory“.

Die folgende Tabelle zeigt den Proof of Concept für das Measure „Internetverkäufe außerhalb der USA“, dessen Formel im Codeabschnitt unten angegeben ist. Die Tabelle vergleicht alle Internetverkäufe mit Internetverkäufen außerhalb der USA, um zu zeigen, dass der Filterausdruck funktioniert, indem die Verkäufe in den USA von der Berechnung ausgeschlossen werden.

Fügen Sie das Feld „SalesTerritoryCountry“ zum Bereich Zeilenbeschriftungen eines Berichts oder einer PivotTable hinzu, um diese Tabelle selbst zu erstellen.

Tabelle 1. Vergleich der Gesamtverkäufe in den USA mit allen anderen Regionen

Row Labels Internet Sales Internetverkäufe außerhalb der USA
Australien 4.999.021,84 USD 4.999.021,84 USD
Kanada 1.343.109,10 USD 1.343.109,10 USD
Frankreich 2.490.944,57 USD 2.490.944,57 USD
Deutschland 2.775.195,60 USD 2.775.195,60 USD
Vereinigtes Königreich 5.057.076,55 USD 5.057.076,55 USD
USA 9.389.479,79 USD
Grand Total 26.054.827,45 USD 16.665.347,67 USD

Die abschließende Berichttabelle zeigt die Ergebnisse, wenn Sie eine PivotTable mit dem Measure „Internetverkäufe außerhalb der USA“ erstellen. Fügen Sie das Feld „CalendarYear“ zum Bereich Zeilenbeschriftungen der PivotTable und das Feld „ProductCategoryName“ zum Bereich Spaltenbeschriftungen hinzu.

Tabelle 2: Vergleich der Verkäufe außerhalb der USA nach Produktkategorien

Row Labels Accessories Bikes Clothing Grand Total
2005 1.526.481,95 USD 1.526.481,95 USD
2006 3.554.744,04 USD 3.554.744,04 USD
2007 156.480,18 USD 5.640.106,05 USD 70.142,77 USD 5.866.729,00 USD
2008 228.159,45 USD 5.386.558,19 USD 102.675,04 USD 5.717.392,68 USD
Grand Total 384.639,63 USD 16.107.890,23 USD 172.817,81 USD 16.665.347,67 USD
SUMX(FILTER('InternetSales_USD', RELATED('SalesTerritory'[SalesTerritoryCountry])<>"United States")  
     ,'InternetSales_USD'[SalesAmount_USD])  

Filterfunktionen
ALL-Funktion
ALLEXCEPT-Funktion