python - Pymongo 批量删除

标签 python mongodb pymongo bulk bulk-delete

我需要使用 pymongo 对 mongodb 进行批量删除。我通过查询获取了需要删除的文档的 _id 字段,但我无法弄清楚如何使用 _id 来将其以 10,000 为单位进行删除。

最佳答案

下面是 Unordered Bulk Write Operations 的示例使用电流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)

上面的示例使用无序操作,因为无序批量操作会被批量处理并以任意顺序发送到服务器,并可以并行执行。尝试所有操作后,将报告发生的任何错误。另请参阅PyMongo Bulk Write OperationsMongoDB Bulk Write Operations了解更多信息。

关于python - Pymongo 批量删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53713768/

相关文章:

python - 是否可以修改 len() 的行为?

MongoDB : Cloning Database error?

python - 尝试解析字符串并将其转换为嵌套列表

mysql - Mongodb 一个或两个集合?

windows - 无法在 Windows 上作为服务启动 Mongodb 2.6.3

python - 时间数据 '2019-06-02T16:19:27.000-04:00' 与格式 '%Y-%m-%dT%H:%M:%S.%fZ' 不匹配

python - pymongo update_one(), upsert=True 不使用 $ 运算符

python - Python中如何处理带有参数的异常

python - Angular js上传文件功能无法按预期工作

python - 如何在 Django 中实现 ModelChoiceField