我需要使用pymongo对mongodb进行批量删除。我得到了需要通过查询删除的文档的_id字段,但我不知道如何使用我得到的以10000块为单位删除的_id。
下面是使用当前PyMongo v3.7.2:的无序批量写入操作的示例
from pymongo import DeleteOne
from pymongo.errors import BulkWriteError
requests = [
DeleteOne({'_id': 101}),
DeleteOne({'_id': 102})]
try:
db.collection.bulk_write(requests, ordered=False)
except BulkWriteError as bwe:
pprint(bwe.details)
上面的例子是使用unordered
操作,因为无序的批量操作是分批的,并以任意顺序发送到服务器,在那里它们可以以并行执行。尝试所有操作后,将报告发生的任何错误。另请参阅PyMongo批量写入操作和MongoDB批量写入操作以了解更多信息。