我有以下结构:
{
'name':'something',
'commens':{
'value':'something'
}, {
'value':'something else'
}
}
我的问题是,我如何插入/更新这些子文档?
如果您使用的是 MongoDB 控制台,则必须使用$ 位置运算符来更新嵌入的文档。
db.yourCollection.update({ "_id" : ObjectId("4a33289ae89489"), "commens._id" : ObjectId("32321eae20fc603aee49124") }, { "$set" : { "commens.$.value" : "something else" } })
我假设“评论”是一个数组,否则您发布的示例不是有效的 JSON/BSON。对于数组操作,您可以查看:http ://docs.mongodb.org/manual/reference/operator/update-array/
仅在更新查询中,您可以执行 upsert,如果文档不存在,它将插入该文档。