В соответствии с PyMongo docs update()
может обновлять только один документ за раз. Скажем, у меня есть 100 документов, которые я хочу обновить одновременно. Это много накладных расходов. Есть ли способ обновить несколько документов с помощью одного запроса MongoDB через PyMongo?
Несколько одновременных обновлений с MongoDB/PyMongo?
Ответ 1
На самом деле вы можете обновить несколько документов с помощью опции multi:
collection.update(spec, doc, multi=True)
Это обновление всех совпадений.
Ответ 2
вы можете обновлять несколько документов с разными _id за раз, используя функцию массовой записи, доступную в mongodb 2.6 попробуйте http://api.mongodb.org/python/current/examples/bulk.html
в точности вы можете использовать операции упорядоченной массовой записи, которая обновляет большую часть записей, которые имеют разные критерии.
для получения более подробной информации Лучший способ читать и обновлять документы mongodb с использованием pymongo