Dela via


FILTER

gäller för:beräknad kolumnberäknad tabellMåttVisuell beräkning

Returnerar en tabell som representerar en delmängd av en annan tabell eller ett annat uttryck.

Syntax

FILTER(<table>,<filter>)

Parametrar

Term Definition
table Tabellen som ska filtreras. Tabellen kan också vara ett uttryck som resulterar i en tabell.
filter Ett booleskt uttryck som ska utvärderas för varje rad i tabellen. Till exempel [Amount] > 0 eller [Region] = "France"

Returvärde

En tabell som endast innehåller de filtrerade raderna.

Anmärkningar

  • Du kan använda FILTER för att minska antalet rader i tabellen som du arbetar med och endast använda specifika data i beräkningar. FILTER används inte oberoende av varandra, utan som en funktion som är inbäddad i andra funktioner som kräver en tabell som argument.

  • Metodtips när du använder FILTERfinns i Undvik att använda FILTER som ett filterargument.

Använd COUNTROWS i stället för COUNT i DAX

  • Den här funktionen stöds inte för användning i DirectQuery-läge när den används i beräknade kolumner eller säkerhetsregler på radnivå (RLS).

Exempel

I följande exempel skapas en rapport över Internetförsäljning utanför USA med hjälp av ett mått som filtrerar bort försäljningen i USA och sedan delar upp efter kalenderår och produktkategorier. Om du vill skapa det här måttet filtrerar du tabellen, Internet Sales USD, med hjälp av Sales Territory och använder sedan den filtrerade tabellen i en SUMX funktion.

I det här exemplet uttrycket:

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

Returnerar en tabell som är en delmängd av InternetFörsäljning minus alla rader som tillhör usa:s försäljningsområde. Funktionen RELATED är det som länkar områdesnyckeln i tabellen Internetförsäljning till SalesTerritoryCountry i tabellen SalesTerritory.

Följande tabell visar konceptbeviset för måttet NON USA Internet Sales, formeln som anges i kodavsnittet nedan. I tabellen jämförs all Internetförsäljning med internetförsäljning utanför USA för att visa att filteruttrycket fungerar genom att utesluta försäljning i USA från beräkningen.

Om du vill återskapa den här tabellen lägger du till fältet SalesTerritoryCountry i radetiketter område i en rapport eller pivottabell.

Tabell 1. Jämföra total försäljning för USA jämfört med alla andra regioner

Radetiketter Internetförsäljning Internetförsäljning som inte är USA
Australien $4,999,021.84 $4,999,021.84
Kanada $1,343,109.10 $1,343,109.10
Frankrike $2,490,944.57 $2,490,944.57
Tyskland $2,775,195.60 $2,775,195.60
Storbritannien $5,057,076.55 $5,057,076.55
USA $9,389,479.79
Totalsumma $26,054,827.45 $16,665,347.67

Den slutliga rapporttabellen visar resultatet när du skapar en pivottabell med hjälp av måttet NON USA Internet Sales. Lägg till fältet CalendarYear i radetiketter området i pivottabellen och lägg till fältet ProductCategoryName i kolumnetiketter området.

Tabell 2. Jämföra icke-amerikansk försäljning efter produktkategorier

Radetiketter Tillbehör Cyklar Kläder Totalsumma
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
Totalsumma $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])

Filtrera funktionerALL funktionALLEXCEPT funktion