我有一个名为History的mongodb Collection:
{
"_id" : ObjectId("58e374f06e1cdc455ca49bb1"),
"creationtime" : ISODate("2017-04-04T10:26:57.185Z"),
"loginName" : "someone",
"retries" : [
{
"number" : 1,
"retryTime" : ISODate("2017-04-04T10:26:57.185Z"),
"_id" : ObjectId("58e374f16e1cdc455ca49bb2")
},
{
"number" : 2,
"retryTime" : ISODate("2017-04-04T10:32:19.476Z"),
"_id" : ObjectId("58e3763393cb982f5f335905")
},
{
"number" : 3,
"retryTime" : ISODate("2017-04-04T10:32:29.284Z"),
"_id" : ObjectId("58e3763d93cb982f5f335906")
}
],
"__v" : 2
}
我想删除集合中的所有文档,“retries”数组的最后一个索引大于某个值。
var now = new Date()
History.remove({ "retries.[retries.length -1]" : { $gte: now }},function(err,result) {
});
这显然不是怎么做的,我在徘徊怎么能实现(我只是编了重试。[retries.length -1] 部分) 我可以用任何方式查询数组中的最后一个元素吗?并根据上述查询删除文档?