次の方法で共有


FILTER 関数

別のテーブルまたは式のサブセットを表すテーブルを返します。

構文

FILTER(<table>,<filter>)

パラメーター

項目

定義

table

フィルターを適用するテーブル。 このテーブルは、結果としてテーブルが得られる式として指定することもできます。

filter

テーブルの行ごとに評価するブール式。 たとえば、[Amount] > 0 または [Region] = "France" のようになります。

戻り値

フィルター選択された行のみが含まれているテーブル。

説明

FILTER を使用すると、作業するテーブル内の行数を減らして、特定のデータのみを計算に使用することができます。 FILTER を単独で使用することはなく、テーブルを引数として受け取る他の関数に埋め込んで使用します。

使用例

次の例では、米国外でのインターネット売上のレポートを作成します。このレポートを作成するには、米国での売上を除外するメジャーを使用して、カレンダー年度と製品カテゴリでスライスします。 このメジャーを作成するには、Sales Territory を使用して Internet Sales USD テーブルをフィルター処理し、フィルター処理したテーブルを SUMX 関数で使用します。

この例で、式 FILTER('InternetSales_USD', RELATED('SalesTerritory'[SalesTerritoryCountry])<>"United States") は、Internet Sales から United States 販売区域に属する行をすべて差し引いたサブセットであるテーブルを返します。 RELATED 関数は、Internet Sales テーブルの Territory キーを SalesTerritory テーブルの SalesTerritoryCountry にリンクします。

次の表は、下記のコード セクションに示す数式、NON USA Internet Sales メジャーの概念を示したものです。 この表は、インターネットでの総売上と米国以外のインターネットでの売上を比較し、米国での売上を計算から除外することで、フィルター式が機能することを示しています。

このテーブルを再作成するには、ピボットテーブルの [行ラベル] 領域に SalesTerritoryCountry フィールドを追加します。

表 1. 米国とその他の全地域の売上合計の比較

行ラベル

Internet Sales

Non USA Internet Sales

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

 

総計

$26,054,827.45

$16,665,347.67

最後のレポート表は、NON USA Internet Sales メジャーを使用してピボットテーブルを作成したときの結果を示しています。 ピボットテーブルの [行ラベル] 領域に CalendarYear フィールドを追加し、[列ラベル] 領域に ProductCategoryName フィールドを追加します。

表 2. 米国以外の製品カテゴリごとの売上比較

Non USA Internet Sales

列ラベル

 

 

 

行ラベル

Accessories

Bikes

Clothing

総計

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

総計

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

関連項目

参照

ALL 関数

ALLEXCEPT 関数

その他の技術情報

フィルター関数 (DAX)