MongoDb 可以返回增量结果吗?

GaT*_*mas 3 mongodb

是否可以执行 MongoDB 增量 ($inc) 并将增量结果作为同一调用的一部分返回,而不必进行两次调用?

Abd*_*eed 5

您将不得不使用findandModify()

从文档:

修改并返回单个文档。默认情况下,返回的文档不包括对更新所做的修改。要返回对更新进行修改的文档,请使用新选项。findAndModify() 方法是一个围绕 findAndModify 命令的 shell 助手。

您可以这样使用:

db.yourCollection.findAndModify({
  query:{},
  update: { $inc: { propertyToIncrement: 1 }},
  new: true
})
Run Code Online (Sandbox Code Playgroud)

  • 我想添加到这个答案中, findAndModify 将默认返回修改*之前*的文档。要使用新更新获得*后* 修改的文档,请添加`new:true`。 (3认同)