所以我有大约50个文档ID。我的pythonveno列表包含如下所示的文档ID
5ddfc565bd293f3dbf502789
5ddfc558bd293f3dbf50263b
5ddfc558bd293f3dbf50264f
5ddfc558bd293f3dbf50264d
5ddfc565bd293f3dbf502792
但当我试图删除这50个文档ID时,我发现很难。让我解释一下——为了删除所有50个文档,我需要反复运行python脚本。第一次运行脚本时,它会删除10个,下一次运行时,它会删除18个,以此类推。我的for循环非常简单,如下所示
for i in veno:
vv = i[0]
db.Products2.delete_many({'_id': ObjectId(vv)})
我没有任何mongo实例要测试,但是呢
如果这不起作用,那么也许这个
据我所知,delete\u many的第一个参数是filter,所以 它的设计方式是,您不会删除特定的文档 而是满足特定条件的文档。 在上述情况下,最好是通过说->;立即删除所有文档;删除其\u id位于($in)列表中的所有文档[ObjectId(vv)用于vv in veno]
如果您的列表只是ID,那么您需要:
完整示例:
给出:
相关问题 更多 >
编程相关推荐