Mongodb:更新数组的数组
我有一个名为products的集合,我想在其中更新options.stores.code下有空字段的代码 结构如下:-Mongodb:更新数组的数组,mongodb,mongodb-query,Mongodb,Mongodb Query,我有一个名为products的集合,我想在其中更新options.stores.code下有空字段的代码 结构如下:- { "_id": ObjectId(), "sku": "V4696-DR-V33", "options": [ { "sku": "8903689984338", "stores": [ { "code": "AND1", "zipcode": "1
{
"_id": ObjectId(),
"sku": "V4696-DR-V33",
"options": [
{
"sku": "8903689984338",
"stores": [
{
"code": "AND1",
"zipcode": "110070",
"inventory": -5000
},
{
"code": "AND2",
"zipcode": "201010",
"inventory": -5000
},
{
"code": "AND3",
"zipcode": "411001",
"inventory": -5000
},
{
"code": "AND4",
"zipcode": " 700020",
"inventory": -5000
}
],
},
{
"sku": "1742564789",
"stores": [
{
"code": "AND1",
"zipcode": "110070",
"inventory": -5000
},
{
"code": "AND2",
"zipcode": "201010",
"inventory": -5000
},
{
"code": "AND3",
"zipcode": "411001",
"inventory": -5000
},
{
"code": "AND8",
"zipcode": " 700020",
"inventory": -5000
}
],
},
]
}
要更新具有相同代码的库存。要更新空存储代码:
db.products.update({"code":""},{$set:{"code":"new value"}}
使用python脚本对此更新使用任何循环。。。。。。。。。。。并做了一个小小的修改--{$set:{options.loop variable.stores.$.inventory:}}这可以帮助查询这是正常的更新,但不会像我期望的那样。你可以在这里找到答案,谢谢你的回复。我已经检查过该查询仅对数组中的单个对象有效。但对所有匹配的元素无效。我们可以不使用任何循环使用mongo query吗,因为我有许多记录要更新。使用mongo query无法直接更新,您必须使用任何循环。k Thank将处理此解决方案并向您发布更新:谢谢