MongoDB-增加对象中的嵌套值 请考虑“组”集合以下文档 "auto_availability" : { "54c5c59d75de3e8d0a8b4567" : 12, "54c5c59d75de3e8d0a8b4568" : 12, "54c5c59d75de3e8d0a8b4569" : 12, "54c5c59d75de3e8d0a8b456a" : 12, "54c5c59d75de3e8d0a8b456b" : 12, "54c5c59d75de3e8d0a8b456c" : 12, "54c5c59d75de3e8d0a8b456d" : 12, "54c5c59d75de3e8d0a8b456e" : 12, "54c5c59d75de3e8d0a8b456f" : 12, "54c5c59d75de3e8d0a8b4570" : 12, "54c5c59d75de3e8d0a8b4571" : 12, "54c5c59d75de3e8d0a8b4572" : 12, "54c5c59d75de3e8d0a8b4573" : 12, "54c5c59d75de3e8d0a8b4574" : 12, "54c5c59d75de3e8d0a8b4575" : 12, "54c5c59d75de3e8d0a8b4576" : 12, "54c5c59d75de3e8d0a8b4577" : 12, "54c5c59d75de3e8d0a8b4578" : 12 }
我需要从开始的MongoDB-增加对象中的嵌套值 请考虑“组”集合以下文档 "auto_availability" : { "54c5c59d75de3e8d0a8b4567" : 12, "54c5c59d75de3e8d0a8b4568" : 12, "54c5c59d75de3e8d0a8b4569" : 12, "54c5c59d75de3e8d0a8b456a" : 12, "54c5c59d75de3e8d0a8b456b" : 12, "54c5c59d75de3e8d0a8b456c" : 12, "54c5c59d75de3e8d0a8b456d" : 12, "54c5c59d75de3e8d0a8b456e" : 12, "54c5c59d75de3e8d0a8b456f" : 12, "54c5c59d75de3e8d0a8b4570" : 12, "54c5c59d75de3e8d0a8b4571" : 12, "54c5c59d75de3e8d0a8b4572" : 12, "54c5c59d75de3e8d0a8b4573" : 12, "54c5c59d75de3e8d0a8b4574" : 12, "54c5c59d75de3e8d0a8b4575" : 12, "54c5c59d75de3e8d0a8b4576" : 12, "54c5c59d75de3e8d0a8b4577" : 12, "54c5c59d75de3e8d0a8b4578" : 12 },mongodb,mongodb-query,aggregation-framework,Mongodb,Mongodb Query,Aggregation Framework,我需要从开始的“54c5c59d75de3e8d0a8b4568”增加4个字段10 预期结果: "auto_availability" : { "54c5c59d75de3e8d0a8b4567" : 12, "54c5c59d75de3e8d0a8b4568" : 22, "54c5c59d75de3e8d0a8b4569" : 22, "54c5c59d75de3e
“54c5c59d75de3e8d0a8b4568”
增加4个字段10
预期结果:
"auto_availability" : {
"54c5c59d75de3e8d0a8b4567" : 12,
"54c5c59d75de3e8d0a8b4568" : 22,
"54c5c59d75de3e8d0a8b4569" : 22,
"54c5c59d75de3e8d0a8b456a" : 22,
"54c5c59d75de3e8d0a8b456b" : 22,
"54c5c59d75de3e8d0a8b456c" : 12,
"54c5c59d75de3e8d0a8b456d" : 12,
"54c5c59d75de3e8d0a8b456e" : 12,
"54c5c59d75de3e8d0a8b456f" : 12,
"54c5c59d75de3e8d0a8b4570" : 12,
"54c5c59d75de3e8d0a8b4571" : 12,
"54c5c59d75de3e8d0a8b4572" : 12,
"54c5c59d75de3e8d0a8b4573" : 12,
"54c5c59d75de3e8d0a8b4574" : 12,
"54c5c59d75de3e8d0a8b4575" : 12,
"54c5c59d75de3e8d0a8b4576" : 12,
"54c5c59d75de3e8d0a8b4577" : 12,
"54c5c59d75de3e8d0a8b4578" : 12
}
如果你有任何想法,请帮助我。你处理这件事的方式有很多错误。最基本的是,这不是一个数组,因此您需要了解其中的差异
我的意思是: 案例1
这不是最好的模式,您可能应该这样做,因为您无法查询名称的值:
“自动可用性”:[
{“_id”:“54c5c59d75de3e8d0a8b4567”,“值”:12},
{“_id”:“54c5c59d75de3e8d0a8b4568”,“value”:12},//您在标题中提到了一个数组,但您提供的“自动可用性”json不是数组。哪一个是对的?@joao抱歉,它是一个对象。我更改了标题。在您的第三种情况下,您不会在查找中强制排序,因为将始终使用_id索引(因此检索文档总是按ASC排序)?@joao公平观察。真正的目的是这些将是ObjectId
值而不是字符串(特别是在最后一种情况下)。但实际上,即使字符串是“lexcial”值,并且仍然符合ObejctId
所遵循的“幂等”概念。因此“它总是比插入“下一个”时更大”