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

如何在MongoDB中更新嵌套对象内部的属性值?

MongoDB更新嵌套文档字段的正确写法

你的代码报错是因为在JavaScript对象字面量中,直接用size.height作为键名不符合语法规范,JavaScript会把点解析为属性访问,导致语法错误。

以下是两种正确的写法:

  • 方法一(推荐):将嵌套字段路径用引号包裹,仅更新指定字段,不影响其他嵌套属性

    db.inv.updateOne({_id: 0}, { $set: {"size.height": 12} })
    
  • 方法二:使用嵌套对象形式,注意这种方式会覆盖整个size对象,必须保留所有原有字段,否则未指定的字段会被删除

    db.inv.updateOne({_id: 0}, { $set: { 
      size: { 
        height: 12, 
        width: 3, 
        uom: 'm', 
        quantity: 16 
      } 
    } })
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 06:27:18