Hasura graphql在日期之间的查询

问题描述 投票:1回答:1

在我的hasura.io数据库中,有一个booking表,用于存储具有以下属性的预订:

  • id(自动递增)
  • 来自(timestamptz)
  • 至(timestamptz)
  • 描述(文本)

现在,通过UI,当用户进行预订时,我想检查以前是否有任何预订触及了那些日期的范围。

例如用户希望使用以下日期进行预订:

{
  "from": "2020-03-31T14:00:00+00:00",
  "to": "2020-03-31T17:00:00+00:00"
}

但是在同一日期有预订:

{
  "from": "2020-03-31T15:00:00+00:00",
  "to": "2020-04-01T17:00:00+00:00"
}

注意,此预订不在用户尝试预订的日期范围内。因此以下查询将不返回任何内容。

query CheckBooking($from: timestamptz!, $to: timestamptz!) {
  booking(where: {_and: [{from: {_lte: $from}}, {to: {_gte: $to}}]}) {
    id
    from
    to
  }
}

以上是我尝试未成功的结果。谁能帮助找出检查范围内或范围内是否有任何预订用户新预订的正确查询?

graphql react-apollo gql hasura
1个回答
1
投票

[我们想分别考虑fromto,并对两者都应用一个范围。因此,您可以执行以下操作:

© www.soinside.com 2019 - 2024. All rights reserved.