将子文档数组元素添加到mongoDB中的子文档数组元素

dan*_*car 4 mongodb

这可能吗?我有一个集合C,具有一系列属性A1.每个属性都有一个子属性A2的数组.

如何将子文档添加到特定的C.A1子文档?

Tho*_*mas 8

这是一个例子.

db.docs.insert({_id: 1, A1: [{A2: [1, 2, 3]}, {A2: [4, 5, 6]}]})
Run Code Online (Sandbox Code Playgroud)

如果您知道要插入的子文档的索引,则可以在中间使用带有索引(从0开始)的点表示法:

db.docs.update({_id: 1}, {$addToSet: {'A1.0.A2': 9}})
Run Code Online (Sandbox Code Playgroud)

这导致:

{
    "A1" : [
        {
            "A2" : [
                1,
                2,
                3,
                9
            ]
        },
        {
            "A2" : [
                4,
                5,
                6
            ]
        }
    ],
    "_id" : 1
}
Run Code Online (Sandbox Code Playgroud)

  • "如果您知道要插入的子文档的索引," - 如果要插入它,您如何知道索引? (6认同)