📜  $inc (1)

📅  最后修改于: 2023-12-03 15:29:05.951000             🧑  作者: Mango

$inc操作符介绍

$inc是MongoDB中的一个操作符,用于对文档中的某个字段的值进行增量操作。

语法
{ $inc: { <field1>: <amount1>, ... } }

$inc操作符需要一个包含字段和增量数字的文档作为参数。字段可以是任何数字类型的字段,增量数字必须是整数或浮点数。

示例
// 原始文档
{
  "name": "张三",
  "age": 20,
  "score": 60
}

// 将age字段增量增加1,将score字段增量增加10
db.students.updateOne(
  { "name": "张三" },
  { $inc: { "age": 1, "score": 10 } }
);

// 更新后的文档
{
  "name": "张三",
  "age": 21,
  "score": 70
}

$inc操作符可以用于增量计数器,如下所示:

// 创建一个计数器文档
db.counters.insertOne({ "_id": "page_view", "count": 0 });

// 每次访问网站页面时将计数器增量增加1
db.counters.updateOne(
  { "_id": "page_view" },
  { $inc: { "count": 1 } }
);

// 获取当前页面访问次数
db.counters.findOne({ "_id": "page_view" });
注意事项
  • $inc操作符只能作用于数字类型的字段,如果字段是其他类型,在执行操作时会产生错误。
  • 增量数字可以为正数、负数或0,如果字段不存在,$inc操作符会将字段的值设置为增量数字。
  • 在分片集群中使用$inc操作符可能会有一定复杂性,需要谨慎使用。