在Mongo中,UpdateOne()
和findOneAndUpdate()
方法有什么区别?我似乎无法理解他们之间的差异。如果可以使用一个使用UpdateOne()
和findOneAndUpdate
的演示示例,将不胜感激。
发布于 2022-08-05 11:10:27
使用mongo-shell
开始在否则为空的集合中插入文档:
db.users.insertOne({name: "Jack", age: 11})
UpdateOne
db.users.updateOne({name: "Jack"}, {$set: {name: "Joe"}})
此操作返回一个UpdateResult
。
{ acknowledged: true,
insertedId: null,
matchedCount: 1,
modifiedCount: 1,
upsertedCount: 0 }
FindOneAndUpdate
db.users.findOneAndUpdate({name: "Joe"}, {$set: {name: "Jill"}})
此操作返回已更新的文档。
{ _id: ObjectId("62ecf94510fc668e92f3cecf"),
name: 'Joe',
age: 11 }
当您必须更新一个文档并同时获取它时,最好使用FindOneAndUpdate
。
https://stackoverflow.com/questions/73225133
复制相似问题