更新/修改以在mongoDB中添加数组中的元素(使用相同的键)

时间:2016-06-21 22:45:30

标签: mongodb

我在mongoDB集合“users”中有这样的文档 -

{
    "_id" : ObjectId("5769bdb97689b3d7c91b0fcc"),
    "id" : 1234,
    "address" : [
            "address1",
            "address2"
                ]
}

我想使用“id”在数组中添加一个地址,并使其形式为 -

{
    "_id" : ObjectId("5769bdb97689b3d7c91b0fcc"),
    "id" : 1234,
    "address" : [
            "address1",
            "address2",
            "address3"
                ]
} 

我正在使用此声明 -

db.users.update({ "id": 1234 },{ $set: { "address": "address3" }});

但它取代了现有地址,并使其成为表格 -

{
    "_id" : ObjectId("5769bdb97689b3d7c91b0fcc"),
    "id" : 1234,
    "address" : [
            "address3"
                ]
}

我无法轻松访问以前存储的地址。 有什么建议怎么办呢? 任何替代存储方式也受到欢迎。

1 个答案:

答案 0 :(得分:0)

我认为您正在寻找$ push修饰符:https://docs.mongodb.com/manual/reference/operator/update/push/

db.users.update({ "id": 1234 },{ $push: { "address": "address3" }});