Bulk.find.updateOne()

在本页面

Tip

从 3.2 版开始,MongoDB 还提供了db.collection.bulkWrite()方法来执行批量写入操作。

Description

  • Bulk.find. updateOne(* *)
    • 2.6 版的新功能。

将单个文档更新操作添加到批量操作列表中。

使用Bulk.find()方法来指定确定要更新哪个文档的条件。 Bulk.find.updateOne()方法将更新限制为单个文档。要更新多个文档,请参见Bulk.find.update()

Bulk.find.updateOne()接受以下参数:

ParameterTypeDescription
updatedocument一个更新文档,指定要进行的修改。用update operator表达式指定修改。


来自Bulk.find()的关联<query>文档和更新文档的总和必须小于或等于maximum BSON document size

Behavior

如果<update>文档仅包含update operator表达式,例如:

{
  $set: { status: "D" },
  $inc: { points: 2 }
}

然后,Bulk.find.updateOne()仅更新文档中相应的字段statuspoints

Example

以下示例为items集合初始化Bulk()操作构建器,并将各种updateOne操作添加到操作列表中。

var bulk = db.items.initializeUnorderedBulkOp();
bulk.find( { status: "D" } ).updateOne( { $set: { status: "I", points: "0" } } );
bulk.execute();