MongoDB提供了不同类型的字段更新运算符来更新文档字段的值,而$inc
运算符就是其中之一。该运算符用于将字段的值增加到指定的数量或将字段增加给定的值。
您也可以在嵌入/嵌套文档中使用此运算符。您可以根据需要在update(),updateOne()等方法中使用此运算符。
- 该运算符接受正值和负值。
- 如果给定的字段不存在,则此运算符将创建字段并设置该字段的值。
- 如果将此运算符与null值字段一起使用,则该运算符将生成错误。
- 这是单个文档中的原子操作。
句法:
{ $inc: { field1: amount1, field2: amount2, ... } }
在以下示例中,我们正在使用:
Database: GeeksforGeeks
Collection: contributor
Document: three documents that contain the details of the contributors in the form of field-value pairs.
使用$ inc运算符增加字段的值:
在此示例中,我们通过将“发布文章”字段的值增加到10并将“薪水”字段的值增加到-100,来更新名为Mohit的员工文档的字段。
db.contributor.update({name: "Mohit"}, {$inc: {publisharticles: 10, salary: -100}})
使用$ inc运算符数组中字段的值:
在此示例中,我们通过将字段的值增加到10来更新名称为Mohit的员工文档的字段。
db.contributor.update({name: "Priya", "points._id": "g_1"}, {$inc: {"points.$.a":10}})
使用$ inc运算符增加嵌入式文档中字段的值:
在此示例中,我们通过将等级的值增加到2来更新名称为Mohit的员工文档的字段。
db.contributor.update({name: "Amu"}, {$inc: {"personal.rank": 2}})