MongoDB 删除集合中创建时间最早的记录 (tempid=1)
一种可能的方式是:
- 使用 'find' 方法查找符合条件的文档,并按照创建时间升序排序,只返回前两个文档。可以使用以下代码:
db.collection.find({tempid: 1}).sort({createdAt: 1}).limit(2);
- 在上一步的基础上,使用 'remove' 方法删除找到的文档。可以使用以下代码:
db.collection.find({tempid: 1}).sort({createdAt: 1}).limit(2).forEach(function(doc) {
db.collection.remove({_id: doc._id});
});
这个代码会对每个找到的文档执行一次 'remove' 操作。如果要删除更多的文档,只需要将 'limit' 的值修改为需要删除的文档数量即可。注意,这个操作会永久删除文档,慎重操作。
原文地址: https://www.cveoy.top/t/topic/nF1N 著作权归作者所有。请勿转载和采集!