插入、更新和保存之间有什么区别?

What the difference between insert, update and save?

这些方法有什么区别 .insert_many().save().update().update_many() ?


我想将文档推送到数据库,如果存在相同的文档,它将被更新,或者如果不存在,它将被创建

From docs

update(spec, document, upsert=False, manipulate=False, multi=False, check_keys=True, **kwargs) Update a document(s) in this collection.

DEPRECATED - Use replace_one(), update_one(), or update_many() instead.

使用 update_one()

的示例查询
collection.update_one({'key': 'value'}, {'$set': {'new_key': 'new_value'}}, upsert=True)

使用replace_one()

collection.update_one({'key': 'value'}, {'new_key': 'new_value'}, upsert=True)