# Filter Setup

**Filters allow users to narrow down data in the List by applying conditions to the data table.** Filters are based on the fields of the object configured in the List Configurator. In the filter settings, users can add and configure filters with various conditions (e.g., Equals, Contains, Greater Than, Less Than) to display only the desired data. By combining multiple filters, users can create complex search conditions. This powerful filtering functionality helps users quickly and efficiently locate essential information within large datasets, significantly improving data analysis and decision-making processes.

<figure><img src="/files/3NpqBvR2kF7LgqrCTvLL" alt=""><figcaption><p>Filters in List</p></figcaption></figure>

***

### :small\_orange\_diamond: Filtering Logic

{% hint style="info" %}
Filter Priority\
When the List Configurator is first loaded on the page, filters are applied in the following order of priority:

1\. ListView Filter

2\. [DATATABLE SETUP where](/smallbuilder-lists/builder-setup-steps/datatable-setup/query.md)

3\. URL Parameter

4\. Default Filter Value

5\. Preserved Filter Value
{% endhint %}

<div data-full-width="false"><figure><img src="/files/Mz7oWnoTmIX0pU0FQn4o" alt="" width="531"><figcaption><p>Filter Logic Diagram</p></figcaption></figure></div>

:small\_red\_triangle\_down: Detailed Filtering Logic

* **Role of the List View Filter**
  * Users can create multiple list views from a single base list view.
  * The filters defined by the user in this context are called **List View Filters**, and they are applied with the same priority as the `WHERE` condition in the DATATABLE SETUP.
  * In other words, the **List View Filter** is the highest priority filter applied.
* **When URL Parameters Are Present**
  * Upon loading the list, the `WHERE` condition from DATATABLE SETUP is applied first.
  * If filter values are provided via URL parameters, they are combined with the `WHERE` condition using an AND operator.
  * In this case, Default Filter Values and Preserved Filter Values (locally stored user inputs) are ignored.
* **When URL Parameters Are Not Present**
  * Check whether filter value preservation is enabled.
    * **If "Preserve Filter Values" is Enabled**
      * The system retrieves the user's filter inputs stored locally.
      * It compares these with the Default Filter Values.
      * If any default filters are not present in the local storage, those values are added.
      * The combined filters are then applied together with the DATATABLE SETUP `WHERE` condition using AND.
    * **If "Preserve Filter Values" is Disabled**
      * The Default Filter Values are used as-is.
      * They are combined with the DATATABLE SETUP `WHERE` condition using AND.

***

### :small\_orange\_diamond: Screen Configuration

<figure><img src="/files/3Qx8XKwZJl2N57jQttk3" alt="" width="280"><figcaption><p>Filter Setup</p></figcaption></figure>

<table><thead><tr><th width="74">No.</th><th width="208">Name</th><th>Description</th></tr></thead><tbody><tr><td>1</td><td><strong>Preserve Filter Values</strong></td><td>When enabled, filter input values are retained even after a page refresh.</td></tr><tr><td>2</td><td><strong>Filter Layout</strong></td><td><p>Specify the number of filters to display per row.</p><ul><li><strong>3 of 12</strong>: Displays 4 filters per row. (<em>Default</em>)</li><li><strong>4 of 12</strong>: Displays 3 filters per row.</li></ul></td></tr><tr><td>3</td><td><a href="/pages/klKmhbjqnU5mCxg0krxe"><strong>Add Filters</strong></a></td><td>Add filters based on the fields of the configured object and edit their attributes according to the filter type.</td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.smallbuilder.com/smallbuilder-lists/builder-setup-steps/filter-setup.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
