【发布时间】:2014-03-13 21:22:35
【问题描述】:
我需要从出现在所有文档的其他文档中的子文档中更新一个字段...
像这样,我有一些像这样的文件:
{
"_id": { "$oid" : "531cc2410b4ebf000036b2d7" },
"name": "ALMACEN 2",
"items": [
{
"_id": { "$oid" : "531ed4cae604d3d30df8e2ca" },
"brand": "BJFE",
"type": 0,
"color": "GDRNCCD",
"hand": 1,
"price": 500,
"model": 0,
"qty": 24
},
{
"_id": { "$oid" : "531ed4cae604d2330df8e2ca" },
"brand": "BJFE",
"type": 0,
"color": "GDRNCCD",
"hand": 1,
"price": 500,
"model": 0,
"qty": 12443
},
{
"_id": { "$oid" : "531ed22ae604d3d30df8e2ca" },
"brand": "BJFE",
"type": 0,
"color": "GDRNCCD",
"hand": 1,
"model": 0,
"price": 500,
"qty": 5
}
]
}
我想将所有包含 _id 531ed22ae604d3d30df8e2ca 项目的文档的数量设置为 0
我现在拥有它
warehouses.update({$.items._id: new ObjectID(item.brand._id)}, { $set: { qty: 0}}, {safe: false, multi: true}, function (e) {
if (e) {
error(e);
return;
}
success();
});
但我认为查询不正确..
【问题讨论】: