You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MongoDB:如何实现不存在则添加字段的更新操作?

MongoDB更新文档:字段不存在时自动创建字段

要实现字段不存在时自动创建并赋值,核心是使用$set操作符——它专门用于修改或添加指定字段,不管该字段是否已存在于文档中。

正确的更新语句(MongoDB Shell)

db.collection.updateOne(
  { key: 1 }, // 匹配目标文档的查询条件
  { $set: { age: 20 } }, // 用$set设置age字段
  { upsert: true } // 可选:无匹配文档时自动插入新文档
)

关键说明

  • 使用updateOne更新单个匹配文档,若需批量更新可替换为updateMany
  • $set是核心:如果文档中没有age字段,它会自动创建并赋值为20;如果已有age字段,则直接更新其值
  • upsert: true仅在没有找到匹配key:1的文档时生效,此时会插入一个包含查询条件和age字段的新文档,不需要该逻辑可直接删除此参数

执行后,原文档会变为:

{
    "key": 1,
    "name": "abc",
    "age": 20
}

内容的提问来源于stack exchange,提问作者Geekyvinayak

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 04:52:38