データ ソースからデータをフィルターする
データ ソースにフィルターを作成し、データ ソース内のデータ量を削減することができます。
ワークブックまたはデータ ソースをパブリッシュする場合、データ ソース フィルターはデータ ユーザーを制限するのに役立ちます。Tableau Cloud または Tableau Server にデータ ソースをパブリッシュすると、データ ソースや関連ファイル、抽出は Server または Cloud のサイトに移動します。データ ソースをパブリッシュすると、データの表示、接続、ダウンロード、または分析の作成など、ユーザーのデータに対する権限を設定できます。
パブリッシュされたデータ ソースから分析を作成するユーザーは、そのパブリッシュされたデータ ソースの構築時に使用されたデータ ソース フィルターを表示または変更することはできませんが、クエリを実行するすべてのデータにはそれらのフィルターが適用されます。これは、たとえば特定のユーザーとグループのディメンションをフィルターする、または固定または相対的な日付範囲に基づいてデータ ソース フィルターを定義することで、データの限定されたサブセットを提供するための優れた方法です。これは多くの場合、データ セキュリティに役立ちますが、データのパフォーマンス管理にも活用できます。区分やインデックスに大きく依存するシステムでは、データ ソース フィルターは、Tableau によって発行されたクエリのパフォーマンスを著しく制御する可能性があります。
データ ソース フィルターのタイプ
データ ソース フィルター
データ ソース フィルターには、広範囲のフィルターとテーブルごとのフィルターの 2 つのタイプがあります。2025.1 より前では、データ ソース フィルターによって、適用されたテーブルがフィルターされ、そのフィルターは関連するすべてのテーブルに適用されます。つまり、フィルターは 関連するテーブルのツリー全体に適用されるということです。[Scope (範囲)] 設定を使用すると、フィルターを適用する範囲を制御できます。[<Table> and all related tables (<テーブル>および関連するすべてのテーブル)] をクリックすると、関連するすべてのデータをフィルターする既定の動作が保持されます。範囲を単一のテーブルに設定すると、その特定のテーブルのみをフィルターするテーブルごとのフィルター (論理テーブル フィルターとも呼ばれます) になります。論理テーブル フィルターを使用することは、データ ソース内の残りのテーブルに接続する前にそのテーブルにフィルターを適用することと似ています。データ ソース フィルターの範囲を論理テーブルに設定すると、カスタム SQL を使用してフィルターを 1 つのテーブルに制限する必要がなくなります。
抽出フィルター
追加のフィルターは、ライブではなく抽出された以下のデータ ソースに対して設定できます。抽出フィルターによって、抽出に取り込まれるデータが制限されます。抽出フィルターがテーブルごとまたは広範囲に適用されるかどうかは、データ モデルの構造によって異なります。
- データ ソースに単一の基本テーブルが含まれている場合、抽出フィルターは広範囲に適用されます。これは抽出フィルターの従来の動作です。
- データ モデルが 複数のベース テーブルを含み、マルチファクト関係を使用している場合、抽出フィルターは必ず、論理テーブル フィルターとして 1 つのテーブルにのみ適用されます。これはすべてのマルチファクト関係で既定として設定されています。
既にデータ ソース フィルターが適用されているデータ ソースから抽出を作成した場合、それらのフィルターは抽出フィルターとして自動的に推奨され、[抽出] ダイアログに表示されます。これらの推奨フィルターは、[抽出] フィルター リストに含める必要はないため、データ ソース フィルターの既存のセットに影響を与えることなく安全に削除できます。
データ ソース フィルターの作成
- フィルターを追加します。
- [データ ソース] ページ; ページ右上隅にある [フィルター] セクションで、[追加] を選択します。
- 作成環境: [データ] ペインの上部にあるデータ ソースを右クリック (Mac では Control キーを押しながらクリック) してコンテキスト メニューを開き、[データ ソース フィルターを編集…] を選択します。
[データ ソース] ページまたはワークシートのどちらで開始しても、既存のすべてのデータ ソース フィルターがリストされている [データ ソース フィルターの編集] ダイアログ ボックスが表示されます。
- [データ ソース] ページ; ページ右上隅にある [フィルター] セクションで、[追加] を選択します。
- データ ソース内のすべてのフィールドがリストされている [フィルターの追加] ダイアログ ボックスを開くには、[追加] をクリックします。
- フィルターするフィールドをクリックして選択し、[フィルター] シェルフのフィルターのときと同様に、フィールドのフィルター方法を指定して [OK] をクリックします。
- 範囲を設定します。
- TableName は、アクティブなテーブルのみをフィルターします。この範囲を設定することで、フィルターはデータ ソース全体に影響を与えない論理テーブル フィルターになります。
- TableName と関連テーブルは、アクティブなテーブルとそれに関連するすべてのテーブルをフィルターします。これは、以前のバージョンで見られた広範囲のフィルター動作です。
データ ソース フィルターを追加するには、この手順を繰り返します。
状況によっては、単一の論理テーブル フィルターに範囲を設定できないフィルターが存在する場合があります。これは、複数のテーブルのフィールドを参照する計算フィールドでフィルターが作成された場合、またはフィルターが別のテーブルのフィールドを参照している場合に発生する可能性があります。このような状況でのフィルタリングは、単一の論理テーブルに範囲を限定するのではなく、テーブルと関連テーブルに対して適用する必要があります。
グローバル フィルターとデータ ソース フィルター
データ ソース フィルターを作成すると、該当するデータ ソースを使用しているすべてのグローバル フィルターが自動的に [データ ソース フィルターの編集] ダイアログ ボックスに表示されます。
Tableau Desktop では、グローバル フィルターをデータ ソース フィルターに昇格させることができます。グローバル フィルターをデータ ソース フィルターに昇格するには、[OK] をクリックします。
Tableau Desktop でグローバル フィルターをデータ ソース フィルターに昇格させると、そのグローバル フィルターはワークブックのワークシートには表示されなくなります (データ ソース フィルターになるため)。
重要: 昇格するために [データ ソース フィルターの編集] ダイアログ ボックスでグローバル フィルターを選択する必要はありませんので注意してください。[OK] をクリックすると、リスト内のすべてのグローバル フィルターが昇格します。
グローバル フィルターがデータ ソース フィルターに昇格しないようにするには、[データ ソース フィルターの編集] ダイアログ ボックスで該当のグローバル フィルターを選択し、[削除] をクリックします。