FILTER
Gilt für:Berechnete SpalteBerechnete TabelleMeasurevisuelle Berechnung
Gibt eine Tabelle zurück, die eine Teilmenge einer anderen Tabelle oder eines anderen Ausdrucks darstellt.
Syntax
FILTER(<table>,<filter>)
Parameter
Ausdruck | Definition |
---|---|
table |
Die zu filternde Tabelle. Die Tabelle kann auch ein Ausdruck sein, der zu einer Tabelle führt. |
filter |
Ein boolescher Ausdruck, der für jede Zeile der Tabelle ausgewertet werden soll. Beispiel: [Amount] > 0 oder [Region] = "France" |
Rückgabewert
Eine Tabelle, die nur die gefilterten Zeilen enthält.
Bemerkungen
Sie können FILTER verwenden, um die Anzahl der Zeilen in der Tabelle zu verringern, mit der Sie arbeiten, und nur bestimmte Daten in Berechnungen verwenden. FILTER wird nicht unabhängig verwendet, sondern als Funktion, die in andere Funktionen eingebettet ist, die eine Tabelle als Argument erfordern.
Bewährte Methoden bei der Verwendung von FILTERfinden Sie unter Vermeiden der Verwendung von FILTER als Filterargument.
Verwenden von COUNTROWS anstelle von COUNT in DAX
- Diese Funktion wird für die Verwendung im DirectQuery-Modus nicht unterstützt, wenn sie in berechneten Spalten oder Sicherheitsregeln auf Zeilenebene (RLS) verwendet wird.
Beispiel
Im folgenden Beispiel wird ein Bericht über Internetverkäufe außerhalb der VEREINIGTEN Staaten erstellt, indem ein Maß verwendet wird, mit dem verkäufe in den USA gefiltert und dann nach Kalenderjahr und Produktkategorien gefiltert werden. Um dieses Measure zu erstellen, filtern Sie die Tabelle Internet Sales USD mithilfe von Sales Territory und verwenden dann die gefilterte Tabelle in einer SUMX-Funktion.
In diesem Beispiel lautet der Ausdruck:
FILTER('InternetSales_USD', RELATED('SalesTerritory'[SalesTerritoryCountry])<>"United States")
Gibt eine Tabelle zurück, bei der es sich um eine Teilmenge von Internetverkäufen minus alle Zeilen handelt, die zum Vertriebsgebiet der USA gehören. Die funktion RELATED ist, was den Schlüssel "Territory" in der Tabelle "Internet Sales" mit "SalesTerritoryCountry" in der Tabelle "SalesTerritory" verknüpft.
Die folgende Tabelle zeigt den Machbarkeitsnachweis für das Measure NON USA Internet Sales, die Formel, für die im folgenden Codeabschnitt angegeben wird. In der Tabelle werden alle Internetverkäufe mit Nicht-USA-Internetverkäufen verglichen, um anzuzeigen, dass der Filterausdruck funktioniert, indem die Verkäufe der USA aus der Berechnung ausgeschlossen werden.
Um diese Tabelle neu zu erstellen, fügen Sie das Feld "SalesTerritoryCountry" zum Zeilenbeschriftungen Bereich eines Berichts oder einer PivotTable hinzu.
Tabelle 1. Vergleich des Gesamtumsatzes für USA und alle anderen Regionen
Zeilenbeschriftungen | Internetverkäufe | Nicht-USA-Internetverkäufe |
---|---|---|
Australien | $4,999,021,84 | $4,999,021,84 |
Kanada | $1,343,109.10 | $1,343,109.10 |
Frankreich | $2.490.944,57 | $2.490.944,57 |
Deutschland | $2.775.195,60 | $2.775.195,60 |
Vereinigtes Königreich | $5,057,076,55 | $5,057,076,55 |
USA | $9,389,479,79 | |
Gesamtsumme | $26.054.827,45 | $16,665,347,67 |
In der Schlussberichtstabelle werden die Ergebnisse angezeigt, wenn Sie eine PivotTable mithilfe des Measures NON USA Internet Sales erstellen. Fügen Sie das Feld "CalendarYear" zum Zeilenbeschriftungen Bereich der PivotTable hinzu, und fügen Sie das Feld "ProductCategoryName" zum bereich Spaltenbeschriftungen hinzu.
Tabelle 2. Vergleich von Nicht-US-Verkäufen nach Produktkategorien
Zeilenbeschriftungen | Zubehör | Fahrräder | Kleidung | Gesamtsumme |
---|---|---|---|---|
2005 | $1,526,481,95 | $1,526,481,95 | ||
2006 | $3,554,744,04 | $3,554,744,04 | ||
2007 | $156,480,18 | $5,640,106.05 | $70,142,77 | $5,866,729,00 |
2008 | $228,159,45 | $5,386,558,19 | $102,675,04 | $5,717,392,68 |
Gesamtsumme | $384,639,63 | $16.107.890.23 | $172,817,81 | $16,665,347,67 |
SUMX(FILTER('InternetSales_USD', RELATED('SalesTerritory'[SalesTerritoryCountry])<>"United States")
,'InternetSales_USD'[SalesAmount_USD])