Skip to main content

AND/OR filters

Overview

Our GraphQL implementation offers a vast selection of tools to filter and section results. One of these is the where clause, very common in most database query languages and explained here in detail.

In our GraphQL server implementation, we included logical operators to be used in the where clause, allowing to group multiple parameters in the same where argument using the AND and OR operators to filter results based on more than one criteria.

Note that the newer and more advanced {entityName}sConnection queries support exactly the same format of the where argument as the older {entityName}s queries used in the examples provided here.

Example of an OR clause:

Fetch a list of accounts that either have a balance bigger than a certain amount, or have a specific id.

query {
accounts(
orderBy: balance_DESC,
where: {
OR: [
{balance_gte: "240000000000000000"}
{id_eq: "CksmaBx9rKUG9a7eXwc5c965cJ3QiiC8ELFsLtJMYZYuRWs"}
]
}
) {
balance
id
}
}

Example of AND clause:

Fetch a list of accounts that have a balance between two specific amounts:

query {
accounts(
orderBy: balance_DESC,
where: {
AND: [
{balance_lte: "240000000000000000"}
{balance_gte: "100000000000000"}
]
}
) {
balance
id
}
}