在Mongodb中,是否可以更新文档并在原子操作中检索它以前的状态?
答案 0 :(得分:3)
您可以使用findAndModify
。它有一个new
参数,如果设置为false
(默认值),则返回原始文档。
可选。如果为true,则返回修改后的文档而不是原始文档。 findAndModify()方法忽略删除操作的新选项。默认值为false。
示例:
db.people.findAndModify({
query: { name: "Andy" },
sort: { rating: 1 },
update: { $inc: { score: 1 } },
new: false
})