在Mongodb中删除具有排序和限制的项目

时间:2018-10-23 18:51:53

标签: mongodb pymongo

我可以使用下一条sql语句删除mysql中最新的10个项目。

DELETE FROM `mytable` order by id desc limit 10

是否可以使用排序和限制在Mongodb中执行相同的操作?

我知道如何找到最后10个项目

db.collection.find({}).sort("id", -1).limit(10)

但是我不确定如何一步删除项目。

1 个答案:

答案 0 :(得分:2)

您可以按照以下两个步骤进行操作:

const ids = db.collection.find({})
                     .sort("id", -1)
                     .limit(10)
                     .toArray()
                     .map(ele => ele._id);

db.collection.remove({_id: {$in: ids}})