У меня есть документ, который в основном выглядит так:
{
_id: ObjectId("5b980578db509b467960ef50"),
items: [
{
_id: ObjectId("5b980578db509b467960ef90"),
date: 2010-10-10T00:00:00.000Z
},
{
_id: ObjectId("5b980578db509b467960ef91"),
date: 2010-10-11T00:00:00.000Z
},
{
_id: ObjectId("5b980578db509b467960ef92"),
date: 2010-10-12T00:00:00.000Z
},
{
_id: ObjectId("5b980578db509b467960ef93"),
date: 2010-10-13T00:00:00.000Z
},
{
_id: ObjectId("5b980578db509b467960ef94"),
date: 2010-10-14T00:00:00.000Z
},
{
_id: ObjectId("5b980578db509b467960ef95"),
date: 2010-10-15T00:00:00.000Z
}
]
}
Я пытаюсь создать запрос, в котором я могу получить все Items
после ObjectId
, которое у меня есть (т.е. ObjectId("5b980578db509b467960ef92")
).
Результат моего запроса должен выглядеть следующим образом:
{
_id: ObjectId("5b980578db509b467960ef50"),
items: [
{
_id: ObjectId("5b980578db509b467960ef93"),
date: 2010-10-13T00:00:00.000Z
},
{
_id: ObjectId("5b980578db509b467960ef94"),
date: 2010-10-14T00:00:00.000Z
},
{
_id: ObjectId("5b980578db509b467960ef95"),
date: 2010-10-15T00:00:00.000Z
}
]
}
Кроме того, я хочу все Items
после соответствующего date
значения данного Item
.
В настоящее время я использую подход с двумя запросами, где я получаю соответствующее Item
на основе ObjectID
, а затем использую значение date
, чтобы найти все Items
впоследствии.
Есть ли "лучший" способ сделать это в одном запросе?