Как фильтровать больше, чем в GraphQL

type Person {
    firstName: String!,
    lastName: String!,
    age: Int!
}

Как запросить всех людей старше 18 лет?

Ответ 2

Если вы используете Prisma в качестве бэкэнда, вы можете использовать оператор больше чем (_gt), например так:

query {
  persons(where: {age_gt: 18}) {
    firstName
    lastName
    age
  }
}

Вы также можете использовать другие операторы, такие как:

  • _gt (больше чем)
  • _lt (меньше чем)
  • _gte (больше или равно)
  • _lte (меньше или равно)
  • _in (равно)
  • _not_in (не равно)

Они совместимы с любыми типами данных, такими как Integer, Float, Double, Text, Boolean, Date и т.д.

Ответ 3

Hasura

query {
  article(
    where: {rating: {_gte: 4}}
  ) {
    id
    title
    rating
  }
}

Prisma

query {
  posts(where: {
    AND: [{
      title_in: ["My biggest Adventure", "My latest Hobbies"]
    }]
  }) {
    id
    title
  }
}

Рекомендации Не используйте graphql напрямую/независимо, используйте его с вышеуказанным orm