gpt4 book ai didi

MongoDB - 在 Pymongo 的嵌套数组中更新或创建对象

转载 作者:行者123 更新时间:2023-12-05 06:44:59 24 4
gpt4 key购买 nike

这是我的收藏

{
"_id" : '50001',
"data" :
[
{
"name" : "ram",
"grade" : 'A'
},
{
"name" : "jango",
"grade" : 'B'
},
{
"name" : "remo",
"grade" : 'A'
}
]
}

这里我想更新对应于“name”的对象:“jango”,如果“jango”不存在,则必须为数组创建一个新条目。

我可以创建一个新条目,但“创建或更新”失败。

我在mongo解释器中试过这种方式

db.MyCollection.update({'_id': '50001', "data.name" :"jango"}, {'$set':{'data': {'data.$.grade':'A'}}}, upsert=true)

但显示

not okForStorage

最佳答案

Mongo 嵌套更新,所以您应该知道下面更新值的位置或 $ 可能会有所帮助

db.collecionName.update(
{'_id': '50001', "data.name" :"jango"},
{'$set':{'data.1.grade':'A'}}, upsert=true)

   db.collecionName.update(
{'_id': '50001', "data.name" :"jango"},
{'$set':{'data.$.grade':'A'}}, upsert=true)

关于MongoDB - 在 Pymongo 的嵌套数组中更新或创建对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27063167/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com