FILTER
Gælder for: Beregning af målingsvisualisering for beregnet kolonne i beregnet tabel
Returnerer en tabel, der repræsenterer et undersæt af en anden tabel eller et andet udtryk.
Syntaks
FILTER(<table>,<filter>)
Parametre
Begreb | Definition |
---|---|
table | Den tabel, der skal filtreres. Tabellen kan også være et udtryk, der resulterer i en tabel. |
filter | Et boolesk udtryk, der skal evalueres for hver række i tabellen. For eksempel [Amount] > 0 eller [Region] = "France" |
Returværdi
En tabel, der kun indeholder de filtrerede rækker.
Bemærkninger
Du kan bruge FILTER til at reducere antallet af rækker i den tabel, du arbejder med, og kun bruge bestemte data i beregninger. FILTER bruges ikke uafhængigt af hinanden, men som en funktion, der er integreret i andre funktioner, der kræver en tabel som et argument.
Du kan få de bedste fremgangsmåder, når du bruger FILTER, under Undgå at bruge FILTER som et filterargument.
Brug COUNTROWS i stedet for COUNT i DAX
- Denne funktion understøttes ikke til brug i DirectQuery-tilstand, når den bruges i beregnede kolonner eller RLS-regler (row-level security).
Eksempel
I følgende eksempel oprettes der en rapport over internetsalg uden for USA ved hjælp af en måling, der filtrerer salget i USA og derefter udsnit efter kalenderår og produktkategorier. Hvis du vil oprette denne måling, skal du filtrere tabellen Internet Sales USD ved hjælp af Sales Territory og derefter bruge den filtrerede tabel i en SUMX-funktion.
I dette eksempel er udtrykket:
FILTER('InternetSales_USD', RELATED('SalesTerritory'[SalesTerritoryCountry])<>"United States")
Returnerer en tabel, der er et undersæt af Internet Sales minus alle rækker, der tilhører USA salgsområde. Funktionen RELATED er det, der sammenkæder nøglen Territory i tabellen Internet Sales med SalesTerritoryCountry i tabellen SalesTerritory.
I følgende tabel vises blåstemplingen for målingen, NON USA Internet Sales, som er angivet i kodeafsnittet nedenfor. Tabellen sammenligner alt internetsalg med internetsalg uden for USA for at vise, at filterudtrykket fungerer, ved at udelade USA salg fra beregningen.
Hvis du vil genoprette denne tabel, skal du føje feltet SalesTerritoryCountry til området Rækkenavne i en rapport eller pivottabel.
Tabel 1. Sammenligning af det samlede salg for USA i forhold til alle andre områder
Rækkenavne | Internetsalg | Internetsalg uden for USA |
---|---|---|
Australien | 4.999.021,84 USD | 4.999.021,84 USD |
Canada | 1.343.109,10 USD | 1.343.109,10 USD |
Frankrig | 2.490.944,57 USD | 2.490.944,57 USD |
Tyskland | 2.775.195,60 USD | 2.775.195,60 USD |
Storbritannien | 5.057.076,55 USD | 5.057.076,55 USD |
USA | 9.389.479,79 USD | |
Samlet total | 26.054.827,45 USD | 16.665.347,67 USD |
Den endelige rapporttabel viser resultaterne, når du opretter en pivottabel ved hjælp af målingen Internet Sales, der ikke er USA. Føj feltet CalendarYear til området Rækkenavne i pivottabellen, og føj feltet ProductCategoryName til området Kolonnenavne .
Tabel 2. Sammenligning af ikke-amerikansk salg efter produktkategorier
Rækkenavne | Accessories | Cykler | Tøj | Samlet 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 |
Samlet 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])