如何使用条件从另一个集合中删除MongoDB?
我的MongoDB上有两个收藏。 比如说: 帐户、用户 我想删除10个月前最后更新的所有用户,这些用户的帐户不再活动 在我的users集合中,我有一个accountId属性,该属性与帐户相关如何使用条件从另一个集合中删除MongoDB?,mongodb,mongodb-query,Mongodb,Mongodb Query,我的MongoDB上有两个收藏。 比如说: 帐户、用户 我想删除10个月前最后更新的所有用户,这些用户的帐户不再活动 在我的users集合中,我有一个accountId属性,该属性与帐户相关 是否可以创建一个查询来删除具有需求的用户?对于这种情况,最好的方法是什么?看看$lookup函数。您可以使用它来“连接”表。 然后,您可以在光标上迭代并删除文档(对于大型集合来说,执行效果不是很好) 是的,我正在阅读试图找到其他解决方案的文章,但唯一的选择是使用游标逐个循环,并使用聚合和查找,这会给我带来一
是否可以创建一个查询来删除具有需求的用户?对于这种情况,最好的方法是什么?看看$lookup函数。您可以使用它来“连接”表。 然后,您可以在光标上迭代并删除文档(对于大型集合来说,执行效果不是很好)
是的,我正在阅读试图找到其他解决方案的文章,但唯一的选择是使用游标逐个循环,并使用聚合和查找,这会给我带来一些问题,因为我不能有更多的索引。但它就是这样。。。呵呵,谢谢你的帮助!:)还有一些你可以尝试的东西可能会表现得更好。1-使用聚合获取删除所需的所有ID 2-获取结果并运行remove()查询
var cursor = db.grades.aggregate(pipeline);
cursor.forEach(function (doc){
db.grades.remove({"_id": doc._id});
});