根据嵌套数组id将数据推送到MongoDB中的两级嵌套数组可以通过以下步骤实现:
{
_id: ObjectId("documentId"),
nestedArray: [
{
_id: ObjectId("nestedId1"),
subArray: [
{
_id: ObjectId("nestedId1-subId1"),
// 其他数据字段...
},
{
_id: ObjectId("nestedId1-subId2"),
// 其他数据字段...
},
// 其他子级数组元素...
]
},
{
_id: ObjectId("nestedId2"),
subArray: [
{
_id: ObjectId("nestedId2-subId1"),
// 其他数据字段...
},
{
_id: ObjectId("nestedId2-subId2"),
// 其他数据字段...
},
// 其他子级数组元素...
]
},
// 其他嵌套数组元素...
]
}
// 更新两级嵌套数组
db.collection.updateOne(
{
_id: ObjectId("documentId"), // 匹配文档的_id
"nestedArray._id": ObjectId("nestedId1") // 匹配第一级嵌套数组元素的_id
},
{
$push: {
"nestedArray.$.subArray": {
_id: ObjectId("nestedId1-subId3"), // 新子级数组元素的_id
// 其他数据字段...
}
}
}
);
以上代码中,$push
操作符用于将新的子级数组元素推送到指定的第一级嵌套数组元素的子数组中。$
符号用于标识匹配到的第一级嵌套数组元素。
注意事项:
腾讯云的相关产品和产品介绍链接地址:
请注意,以上链接仅供参考,具体选择和使用相关产品时,请根据实际需求和腾讯云的产品文档进行判断和决策。
领取专属 10元无门槛券
手把手带您无忧上云