Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Docs 菜单
Docs 主页
/
数据库手册
/ /

更新操作符

以下修饰符可用于更新操作,例如 db.collection.updateMany()db.collection.findAndModify()

您可以对如下环境中托管的部署使用更新运算符:

  • MongoDB Atlas:用于云中 MongoDB 部署的完全托管服务

按以下形式指定更新操作符:

{
<operator1>: { <field1>: <value1>, ... },
<operator2>: { <field2>: <value2>, ... },
...
}

从 MongoDB 5.0 开始,更新运算符按字典顺序处理具有基于字符串的名称的文档字段。具有数字名称的字段按数字顺序处理。

参考该 $set 命令示例:

{ $set: { "a.2": <new value>, "a.10": <new value>, } }

在 MongoDB 5.0 及更高版本中,"a.2""a.10" 之前处理,因为 2 按数字顺序排在 10 之前。

名称
说明

将字段的值设置为当前日期,可以是日期或时间戳。

将字段的值按指定量递增。

仅当指定值小于现有字段值时才更新字段。

仅当指定值大于现有字段值时才更新字段。

将字段的值乘以指定量。

重命名字段。

设置文档中字段的值。

如果某一更新操作导致插入文档,则设置字段的值。对修改现有文档的更新操作没有影响。

从文档中删除指定的字段。

名称
说明

充当占位符,用于更新与查询条件匹配的第一个元素。

充当占位符,以更新数组中与查询条件匹配的文档中的所有元素。

充当占位符,以更新与查询条件匹配的文档中所有符合 arrayFilters 条件的元素。

仅向数组中添加尚不存在于该数组的元素。

删除数组的第一项或最后一项。

删除与指定查询匹配的所有数组元素。

向数组添加一项。

从数组中删除所有匹配值。

名称
说明

修改 $push$addToSet 运算符,以在数组更新时追加多个项目。

修改 $push 运算符,以指定在数组中添加元素的位置。

修改 $push 运算符以限制更新后数组的大小。

修改 $push 运算符,以对存储在数组中的文档重新排序。

名称
说明

对整数值执行按位 ANDORXOR 更新。

要创建表达性更新语句,例如基于当前字段值的条件更新或使用其他字段值的单字段更新,可以使用聚合管道执行更新。

有关语法和示例,请参阅使用聚合管道进行更新。

后退

$topN

在此页面上