LookML で必要なフィルタを作成する

LookML でフィルタ動作を直接指定することで、ユーザーのフィルタ エクスペリエンスをキュレートできます。たとえば、ほとんどのユーザーが Explore で使用すると思われる有用なフィルタを追加できます。また、デフォルトのフィルタを追加して、クエリでデータベース リソースが圧迫されるリスクを最小限に抑えることもできます。

このページでは、すべてのユーザーのフィルタリングに影響する各 LookML パラメータの概要を説明します。

ユーザーが変更できるフィルタの作成

次の表は、すべてのユーザーに公開されている Explore レベルのフィルタを設定する LookML パラメータを示しています。ユーザーは、Look の探索や表示中に、フィルタの表示やフィルタの値の変更をすることはできますが、フィルタを削除することはできません。これらのフィルタはダッシュボードにも適用されますが、ダッシュボード フィルタも作成しない限り、ダッシュボードのフィルタの値を表示または変更することはできません。

LookML パラメータ 範囲 ユーザーに表示するか? ユーザーによる編集が可能か? 説明
always_filter Explore あり あり すべてのユーザーに対して Explore レベルのフィルタを設定するには、always_filter LookML パラメータを使用します。ユーザーはフィルタを表示してデフォルト値を変更できますが、Explore から削除することはできません。
conditionally_filter 探索 あり あり すべてのユーザーに対して Explore レベルのフィルタを設定するには、conditionally_filter LookML パラメータを使用します。always_filter と同様に、ユーザーはフィルタを表示してデフォルト値を変更できます。ただし、always_filter とは異なり、conditionally_filter で指定されたフィルタの代わりに特定のフィールドがフィルタリングされている場合は、ユーザーはそのフィルタを削除できます。

ユーザーが変更できないフィルタの作成

次の表は、すべてのユーザーに対して非表示の Explore レベルのフィルタを設定する LookML パラメータを示しています。ユーザーはフィルタ条件を変更できず、各クエリの SQL にはそのフィルタリングが適用されます。これらのフィルタは Look とダッシュボードにも適用されます。

LookML パラメータ 範囲 ユーザーに表示するか? ユーザーによる編集が可能か? 説明
sql_always_where 探索 場合による なし sql_always_where LookML パラメータを使用して、Explore から生成されたすべての SQL クエリの WHERE 句に Explore レベルのクエリ制限を設定します。ユーザーがフィルタ条件を変更することはできなくなります。また、生成されたクエリ SQL を表示する権限がある場合にのみ、フィルタ条件が表示されます。
sql_always_having 探索 場合による なし sql_always_having LookML パラメータを使用して、Explore から生成されたすべての SQL クエリの HAVING 句に Explore レベルのクエリ制限を設定します。sql_always_where と同様に、ユーザーがフィルタ条件を変更することはできなくなります。また、生成されたクエリ SQL を表示する権限がある場合にのみ、フィルタ条件が表示されます。
sql_where 結合 場合による なし sql_where LookML パラメータを使用して、指定された結合がクエリに含まれる場合に Explore から生成されたすべての SQL クエリの WHERE 句に Explore レベルのクエリ制限を設定します。sql_always_where と同様に、ユーザーがフィルタ条件を変更することはできなくなります。また、生成されたクエリ SQL を表示する権限がある場合にのみ、フィルタ条件が表示されます。
access_filter 探索 場合による なし access_filter LookML パラメータを使用して、Explore から生成されたすべての SQL クエリの WHERE 句に Explore レベルのユーザー固有のクエリ制限を設定します。sql_always_where と同様に、ユーザーがフィルタ条件を変更することはできなくなります。また、生成されたクエリ SQL を表示する権限がある場合にのみ、フィルタ条件が表示されます。ただし、sql_always_where とは異なり、フィルタ条件は各ユーザーのユーザー属性値によって決まります。

ユーザーがフィールドでフィルタリングできないようにする

次の表は、個々のフィールドがフィルタされないようにする LookML パラメータを示しています。

LookML パラメータ 範囲 ユーザーに表示するか? ユーザーによる編集が可能か? 説明
can_filter フィールド あり なし can_filter LookML パラメータを使用して、フィールドをフィルタできるかどうかを指定します。フィールドでフィルタリングできないようにするには、そのフィールドに can_filter: no という行を追加します。これで、ドリルメ ニューでフィールドがフィルタリングされることができなくなります。
skip_drill_filter フィールド あり なし skip_drill_filter LookML パラメータを使用して、ドリル メニューでフィールドをフィルタリングできるかどうかを指定します。ドリル メニューのフィールドのフィルタリングを防ぐには、そのフィールドに skip_drill_filter: yes という行を追加します。このフィールドは、他の場所ではフィルタリングできます。