2017-06-01 81 views
1

我目前正在使用它,但它删除了具有相同名称的所有文档。从猫鼬集合中删除最新创建的文档

Reservation.remove({name:req.body.name}, function(err) { 
    if (err) throw err; 
}); 
+0

您如何识别最新文档?你有时间戳字段吗?如果是,你可以使用类似'db.collection.findOneAndDelete( {name:“some name”}, {sort:{“ts”:-1}} ) – Veeram

回答

2

在新的MongoDB的版本(3.2以上版本)有一个findOneAndDelete方法,所以在mongoshell你可以拨打:

db.collection.findOneAndDelete({}, {sort: {_id: -1}}) 

如果使用MongoDB的IDS,它有一个时间戳这会工作“baked-在'。否则,你需要一些其他的时间字段进行排序。

你也可以使用this方法与Mongoose(从你的文章我不能确定你确定使用哪个mongodb客户端)。