变化的领域中一组对象MongoDB中
问题描述:
我有这个文件中蒙戈:变化的领域中一组对象MongoDB中
{
id: objectId,
list: [
{
id: internalObjectId1,
enabled: true
},
{
id: internalObjectId2,
enabled: false
}]
}
我需要改变能字段。我该怎么做?
答
使用positional $ operator。假设你有其list
元素值集合中的以下文件是嵌入文档数组:
{
"_id" : ObjectId("551be1a04db8a16ac729432e"),
"list" : [
{
"id" : ObjectId("54f43159c922ac0b4387ef9c"),
"enabled" : true
},
{
"id" : ObjectId("54f43159c922ac0b4387ef9d"),
"enabled" : false
}
]
}
以下将随着54f43159c922ac0b4387ef9d
到true
的id
嵌入文档中更新enabled
字段的值:
db.collection.update(
{
"_id": ObjectId("551be1a04db8a16ac729432e"),
"list.id": ObjectId("54f43159c922ac0b4387ef9d")
},
{
"$set": {"list.$.enabled": true}
}
)
这里有些混淆不明白你想把'enabled'键改成其他键名或'enabled'值'true'来转换'false'。 – Yogesh 2015-04-01 12:11:07