> ## Documentation Index
> Fetch the complete documentation index at: https://gql.ch/llms.txt
> Use this file to discover all available pages before exploring further.

# FILTER

The `FILTER` statement selects a subset of the records of the current working table. It updates the current working table to include only the records that satisfy the specified search condition. Compare this to the [WHERE](/docs/querying/where) clause which allows selection of records during the [MATCH](/docs/querying/match) phase. The FILTER statement is applied after the precending statements have been executed. As such, it is most useful in refining the results further by applying additional conditions.

`FILTER` clause is used to apply conditional filters on nodes, relationships, or properties after a pattern is matched. It supports standard logical operators like AND, OR, NOT, and comparison operators such as `=`, `<`, `>`, and `IN`.

```gql theme={null}
MATCH (e: Event )
FILTER e.timestamp > "2026−03−01" AND e.cost <= 200
RETURN e
```

This retrieves all events that occurred after March 1st, 2026, with a cost no greater than 200.

`FILTER` is often paired with [MATCH](/docs/querying/match), but can also follow [WITH](/docs/querying/with) to filter aggregated results.
