通常文档只会有一部分数据要更新,所以使用修改器来操作文档极为高效。
小技巧:了解函数功能,不带括号即可。如:db.blog.update即可查看update函数的具体参数和方法体。
-
$set修改器
"$set"用来指定一个键的值。如果不存在则创建它。
-
$unset
"$unset"完全删除某个键
-
$inc
"$inc"增加已有键的值,不存在则创建(只能用于增加整数、长整数、双精度浮点数)
-
$push
"$push"数组修改器只能操作值为数组,存在key在值末尾增加一个元素,不存在则创建一个数组
另外说明:如在update方法参数列表中有一个upsert。作用是在更新时没找到匹配的就会以这个条件和更新文档为基础创建一个新的文档,匹配到则更新。
这里upsert接收一个布尔值,默认为false。