我有一个文件看起来基本上像这样:
{
_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
}
]
}
我试图构建一个查询,可以获取我拥有的ObjectId
(即ObjectId("5b980578db509b467960ef92")
)之后的所有Items
。
我的查询结果应该像这样:
{
_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
}
]
}
此外,我希望在给定 Item
的对应 date
值之后获取所有的 Items
。
目前我使用了两个查询的方法,首先根据 ObjectID
获取匹配的 Item
,然后使用 date
值查找之后的所有 Items
。
是否有一种更好的方法可以在一个查询中完成这个过程?