Udostępnij za pośrednictwem


Funkcja FILTER

Zwraca tabelę przedstawiającą podzestaw innej tabeli lub wyrażenia.

Składnia

FILTER(<table>,<filter>)

Parametry

Termin

Definicja

table

Tabela do przefiltrowania. Może to być również wyrażenie dające w wyniku tabelę.

filtr

Wyrażenie logiczne, które ma zostać obliczone dla poszczególnych wierszy tabeli. Na przykład [Amount] > 0 lub [Region] = "France".

Wartość zwracana

Tabela zawierająca tylko wyfiltrowane wiersze.

Uwagi

Funkcji FILTER można użyć w celu zmniejszenia liczby wierszy w aktualnie używanej tabeli, co umożliwi użycie w obliczeniach tylko określonych danych. Funkcja FILTER nie jest używana niezależnie, lecz jako funkcja osadzona w innych funkcjach, wymagających tabeli jako argumentu.

Przykład

W poniższym przykładzie zostanie utworzony raport dotyczący sprzedaży internetowej poza USA, w którym będzie używana miara odfiltrowująca sprzedaż w USA. Następnie dane będą fragmentowane według roku kalendarzowego i kategorii produktów. Aby utworzyć tę miarę, należy filtrować tabelę InternetSales_USD, używając tabeli SalesTerritory, a następnie użyć przefiltrowanej tabeli w funkcji SUMX.

W tym przykładzie wyrażenie FILTER('InternetSales_USD', RELATED('SalesTerritory'[SalesTerritoryCountry])<>"United States") zwraca tabelę stanowiącą podzbiór tabeli InternetSales_USD nieobejmujący wierszy należących do kategorii sprzedaży United States. Funkcja RELATED łączy klucz Territory w tabeli InternetSales_USD z kolumną SalesTerritoryCountry w tabeli SalesTerritory.

W poniższej tabeli pokazano wyniki użycia miary Sprzedaż internetowa poza USA, której formułę przedstawiono w sekcji kodu poniżej. W tej tabeli znajduje się porównanie całej sprzedaży internetowej ze sprzedażą internetową poza USA, co pozwala stwierdzić, że wyrażenie filtru działa, ponieważ sprzedaż w USA została wykluczona z obliczeń.

Aby odtworzyć tę tabelę, dodaj pole SalesTerritoryCountry do obszaru Etykiety wierszy w tabeli przestawnej.

Tabela 1.Porównanie łącznej sprzedaży w USAzesprzedażą we wszystkich innych regionach

Etykiety wierszy

Sprzedaż internetowa

Sprzedaż internetowa poza USA

Australia

$4,999,021.84

$4,999,021.84

Canada

$1,343,109.10

$1,343,109.10

France

$2,490,944.57

$2,490,944.57

Germany

$2,775,195.60

$2,775,195.60

United Kingdom

$5,057,076.55

$5,057,076.55

United States

$9,389,479.79

 

Suma końcowa

$26,054,827.45

$16,665,347.67

W finalnej tabeli raportu pokazano wyniki, które zostały zwrócone po utworzeniu tabeli przestawnej przy użyciu miary Sprzedaż internetowa poza USA. Dodaj pole CalendarYear do obszaru Etykiety wierszy tabeli przestawnej, a następnie dodaj pole ProductCategoryName do obszaru Etykiety kolumn.

Tabela 2.Porównanie sprzedaży poza USAwg kategorii produktów

Sprzedaż internetowa poza USA

Etykiety kolumn

 

 

 

Etykiety wierszy

Accessories

Bikes

Clothing

Suma końcowa

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

Suma końcowa

$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])

Zobacz także

Odwołanie

Funkcja ALL

Funkcja ALLEXCEPT

Inne zasoby

Funkcje filtru (język DAX)