Usage
filter: filter_name { … }
}
Hierarchyfilter |
Default ValueNoneAcceptsA Looker identifier to name the filterSpecial RulesFilter names may not be shared with any other filter,dimension , or measure within the same view
|
Definition
The filter
parameter declares a filter-only field and a name for that filter. A user can add filter-only fields as filters when exploring, but they cannot add them to their result set. These filter-only fields are made useful via templated filters, which are an advanced LookML topic.
The filter name must:
- Be unique within any given view
- Consist of characters
a
throughz
(no capital letters),0
through9
, or_
- Start with a letter
There are many types of filter fields, as discussed further on the Dimension, filter, and parameter types documentation page.
Examples
Here are some examples for using the filter
parameter.
Creating a user-specified filter
Create a filter that lets the user specify the order_region
:
Defining a dynamic derived table with a templated filter
As shown on the Templated filters and Liquid parameters documentation page, define a derived table to calculate the lifetime spending for customers in a region that is specified by the user. This example uses the filter
created in the previous example as part of a templated filter. The filter
input is used in the WHERE
clause with Liquid variables:
Using the sql
parameter with filter
You can also use the sql
parameter with filter
, which applies to the SQL WHERE
clause whenever the filter has a value. This allows for a dynamic WHERE
clause, based on the user filter input.
The following example creates a filter that allows only user names that exist in the dataset:
In the example above, if the complete list of user names in the dataset is “Zach”, “Erin”, and “Brett”, the filter results in the following WHERE
clause:
Using filter
to define a dynamic derived table and a user-defined filter
Using the earlier example that defines a derived table with a dynamic region value, you can use the sql
parameter with a templated filter to dynamically build a WHERE
clause that applies to both the derived table and the main Looker-generated query:
In the above example, the user provides input to the filter order_region
, which in turn provides the value to the region
dimension. The region
dimension then provides the value of the WHERE
clause in the derived table SQL and, because of the sql
parameter in the filter
definition, the value for the WHERE
clause in a Looker-generated query.