← All nodes
Filter

Filter Rows

Tests each row against conditions on one or more columns, linked with AND / OR, and sends matching rows out the True output and the rest out the False output.

When to use it

Use it to narrow a dataset to the rows that matter, or to split one stream into two so each half can be handled differently.

In a pipeline

Settings

SettingTypeRequiredDefault or hint
Match LogicselectYesAND
Conditions (JSON)textarea—[{"column":"Status","operator":"eq","value":"Active","join":"AND"}]
Custom Groupingtext—e.g. (1 OR 2) AND 3 — leave empty to use the AND / OR links

Example

Closed orders over 100, or any order from VIP customers

  • Conditions=1 Status equals Closed AND 2 Amount greater than 100 OR 3 Tier equals VIP
Input rows
OrderStatusAmountTier
A-1Closed120Standard
A-2Open80VIP
A-3Closed45Standard
True output
OrderStatusAmountTier
A-1Closed120Standard
A-2Open80VIP

The links read as (1 AND 2) OR 3. A-3 is not discarded; it leaves through the False output.

Worth knowing

  • This node has two outputs. Connect the False output when the rejected rows still matter.
  • Each link between two conditions is its own AND or OR, and AND is applied before OR, as in SQL: 1 AND 2 AND 3 OR 4 OR 5 means (1 AND 2 AND 3) OR 4 OR 5.
  • For any other grouping, type a Custom Grouping over the condition numbers, such as (1 OR 2) AND NOT 3. It overrides the links.
  • Compare with Column checks one column against another in the same row, such as Shipped Date greater than Due Date.
  • Greater and less than compare numbers when both sides are numbers, and text otherwise; the other operators compare text exactly, including case.
  • Is Empty and Is Not Empty ignore the value and count a whitespace-only cell as empty.

Others in Filter