MongoDB扩展嵌入式文档

MongoDB extend Embedded Documents

本文关键字:文档 嵌入式 扩展 MongoDB      更新时间:2023-09-26

我有一个mongo文档,如下:

{
  _id: ... ,
  field_1: ...,
  field_2: ...,
  changes:{
    "1474607149339":"a7hhs",
    "1474607149463":"98nhs",
    "1474607149657":"cxskk9",
    "1474607149880":"csdda3",
    "1474607151575":"bfddrd",
    "1474607153389":"54fbbb",
  }
}

changes中较大的数字为时间戳值。(这是为了跟踪我的应用程序中某些字段的历史)。我将这些更改作为包含很少类似条目的小块发送如:

{
        "1474607159708":"zcdgv",
        "1474607159932":"4h7kk",
        "1474607165362":"nbmnn"
}

如何扩展mongo文档中的changes字段以在单个查询中包含新更改(需要记录大量更改)?

您应该能够使用$set操作符将字段插入到现有文档中:https://docs.mongodb.com/manual/reference/operator/update/set/

db.products.update(
   { _id: 100 },
   { $set: { 
              "changes.1474607159708": "zcdgv",
              "changes.1474607159932": "4h7kk",
              ....
           } 
   }
)