Tables: Apply Filters

Use this action to temporarily view specific rows in a table, while filtering out other rows. You can do this by using operators and criteria so only certain data is displayed.

The result of the Tables: Apply Filters action is a query of the data table, filtered, and stored in a field separate from the original data table. The filtered results are stored in a unique field and can be referenced in an instance. The original data table will not be changed.

Use case

  • To gather only certain information from a data table
  • To generate reports for various people from a single report
  • To start new Workflows from specific rows in a data table; see Tables: Start Workflow for Each Row

How to configure this action

There are two ways to apply filters using this action.

  1. Use the 1st & 2nd column filter fields
  2. Use the Advanced filter logic field

With the 1st & 2nd column filter fields, you can enter a string or integer and filter out all rows that don’t meet a single criteria. This is the simpler filter method and will always look for an exact match of your criteria. For example:

Example criteria Filter effect
4 This will filter for just results that equal 4
Banana This will filter for just results that equal banana
{{field-names}} This will filter for just results that equal the {{field-name}}

With the Advanced filter logic field, you can create more complex logic and filter out all rows that don’t meet multiple criteria, or you can use operators like > and <= to create complex filtering. For example:

Example filter Filter effect
columns[1] > 4 This will filter for just rows greater than 4 in column 1
columns[1] == 'banana' || columns[1] == 'pear' This will filter for just rows that equal banana or pear in column 1
columns[1] !== 'customer' This will filter for just rows that don’t equal customer in column 1
columns[1] > 4 && !IS_EMPTY(columns[2]) This will filter for just the rows where column 1 is greater than 4 and the column 2 is not empty

How to filter dates

The date and date time field types have specific formats but can be filtered. It is easy to apply a filter to a date time type column based on a date time field, such as columns['date-time-type-field1'] > {{date-time-type-field2}}, because the filter and filter target are the same format.

It is also possible to apply a filter based on a date time field to a text type column that has a date and time in it, even though they are not the same format—but the text type field must be correctly structured.

Here are three example formats: Date format 1 and 2 can be filtered, but date format 3 will not correctly resolve.

screen readers look here

For more information on changing between field types, see how to convert data from one field type into a new type or manually changign the field type of an existing field.

Fields for this action

  • Data table

    • Select a table from a list of all tables available on your team. The list only includes tables you have permission to view.
      • You can also reference a table stored in a field. Change the left hand drop-down to Field then select from any field that is part of the process. Learn more.
      • If necessary, you can enter the Table ID directly. Change the left hand drop-down to ID then enter the ID manually. Learn more.
  • 1st column to filter

    • The name or column number of the column where the 1st column filter criteria will be applied.

      ⚠️ Heads-up: If you reference a column by number, enter a single number, such as 4 or 12. If you reference a column by name, enter the column name, for example: start date.

  • 1st column filter criteria

    • Enter the string, integer, or field reference you’d like to filter for. If advanced filter logic is used, this field is ignored.
    • By default, the filter is based on exact match but operators are also available for comparison filters using advanced filter logic.

      ⚠️ Heads-up: If you reference a column by number, use the format: columns[<column-number>], for example columns[4] or columns[12]. If you reference a column by name, use the format: columnns[<column-name>], for example: columns['start date'].

  • 2nd column to filter

    • The name or column number of the column where the 2nd column filter criteria will be applied.

      ⚠️ Heads-up: If you reference a column by number, enter a single number, such as 4 or 12. If you reference a column by name, enter the column name, for example: start date.

  • 2nd column filter criteria

    • Enter the string, integer, or field reference you’d like to filter for. If advanced filter logic is used, this field is ignored.
    • By default, the filter is based on exact match but operators are also available for comparison filters using advanced filter logic.

      ⚠️ Heads-up: If you reference a column by number, use the format: columns[<column-number>], for example columns[4] or columns[12]. If you reference a column by name, use the format: columnns[<column-name>], for example: columns['start date'].

  • Advanced filter logic

    • Create an advanced filter to filter out rows based on operators like > and <= or that meet multiple criteria. Here are some example filters using advanced filter logic.

    • Example filter Filter effect
      columns[1] > 4 This will filter for just rows greater than 4 in column 1
      columns[1] == 'banana' || columns[1] == 'pear' This will filter for just rows that equal banana or pear in column 1
      columns['customer type'] !== 'customer' This will filter for just rows that don’t equal customer in column ‘customer type’
      columns[1] > 4 && !IS_EMPTY(columns[2]) This will filter for just the rows where column 1 is greater than 4 and the column 2 is not empty
    • To create an advanced filter, combine references to columns with different operators. Below are a list of the two ways to reference columns and all available operators. All strings must be enclosed in ''

    • You can create filters that reference columns by order or name.
      • Order: columns[1]
      • Name: columns['Column name']
    • You can use the following operators to create a filter.
    Operator Description
    > greater than
    >= greater than or equal to
    < less than
    <= less than or equal to
    == equal to
    !== not equal to
    || or, used only to separate multiple operators
    && and, used only to separate multiple operators
    IS_EMPTY filter for blanks/empty cells
    !IS_EMPTY filter for non-blanks/empty cells
  • Output Field Prefix

    • To help keep output fields organized, choose an output field prefix to add to the beginning of each output field name as this action may output more than one field.
    • The step’s name is used as the prefix by default.

What will this output?

This action outputs a new data table with the filter applied. The new table contains only the rows of the original data table that match the filter criteria. The original table is not edited by this action.

This action may generate multiple fields. To help keep output fields organized, the prefix above will be added to the beginning of each of the output field names, separated by two dashes. Each field will result as:{{output-field-prefix--output-field}}.

Get help with a problem or question

If something’s not working as expected, or you’re looking for suggestions, check through the options below.

Why do some column names not work?

Enclose individual column names and values in quotation marks (""), if they contain special characters like commas, leading/trailing whitespace, and newlines. For example:

  • If the column name is $Weekly Report,,,, enter the column name as "$Weekly Report,,,", with quotation marks.
  • If you want to use the field reference {{tablecolumn}} to dynamically reference the column name, enter it as "{{tablecolumn}}"

If the column name contains a quotation mark, escape each quotation mark with quotation marks, for example: if the column name is "Column name", enter it as """Column name""".

Legacy Tables: Apply filters

Some teams are using a legacy version of the Tables: Apply filters action for compatibility. The fields below are the older, deprecated fields and field descriptions.

Please note that the && “AND” operator is not available for the legacy Tables: Apply Filters action. In order to emulate an AND operator, apply two or more back to back Tables: Apply Filters actions.

Legacy fields for this action

  • Data table ID

    • Select a table from a list of all tables available on your team. The list only includes tables you have permission to view.
      • You can also reference a table stored in a field. Change the left hand drop-down to Field then select from any field that is part of the process. Learn more.
      • If necessary, you can enter the Table ID directly. Change the left hand drop-down to ID then enter the ID manually. Learn more.
  • Columns to filter

    • Headers for columns where the Filter criteria will be applied upon, in comma-delimited list and in Column Header format. Only columns to be filtered should be defined here.
  • Filter criteria

    • Values or {{field-names}} in comma-delimited list that should be used to filter Columns defined above.
    • By default, the filter will be based on exact match but operators are also available for comparison filters:
    Operator Description
    > greater than
    >= greater than or equal to
    < less than
    <= less than or equal to
    !== not equal to
    || or, used only to separate multiple search terms
  • Result name

    • Name for the resulting filtered data table, can be used later in {{field-names}} format to reference the filtered table