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

MongoDB中如何向数组添加字段及值?重复字段问题求助

为什么MongoDB更新后出现重复的submits字段?

问题原因

你执行的更新命令里,字段路径"submits.ORDER.orderid"缺少了CUSTOMER前缀,MongoDB会默认在文档根级别创建新的submits字段;而原本的submits是嵌套在CUSTOMER对象内的空数组,因此最终出现了两个submits。

另外,你需要向空数组中插入新的ORDER对象,用$set操作符并不合适——$set用于修改已有字段的值,而向数组添加元素应该使用$push操作符。

正确的更新命令

db.customers.updateOne(
  { _id: "FISSA" },
  { $push: { "CUSTOMER.submits": { ORDER: { 'order id': 999, 'employee id': 10 } } } }
)

执行后正确结果

{
  _id: 'FISSA',
  CUSTOMER: {
    'customer code': 'FISSA',
    'customer name': 'FISSA Fabrica',
    submits: [ { ORDER: { 'order id': 999, 'employee id': 10 } } ]
  }
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 16:16:06