gpt4 book ai didi

mongodb - 更新 MongoDB 中数组元素的值

转载 作者:可可西里 更新时间:2023-11-01 09:56:31 24 4
gpt4 key购买 nike

我想知道如何更新数组“array_of_stuff”中“名称”字段标识的元素之一的“值”字段。例如,我想将“name_of_thing_1”的值更新为“new_value_of_thing_1”。如何使用更新命令的第二个参数(即更新参数)ONLY 执行此操作。我正在重新使用内部编写的类库我无法控制更新命令的第一个参数(即查询参数)。这可能吗?

{
"array_of_stuff": [
{
"name": "name_of_thing_1",
"value": "value_of_thing_1",
},
{
"name": "name_of_thing_2",
"value": "value_of_thing_2",
}
]
}

感谢您的帮助!

最佳答案

您可以像这样更新数组中单个项目的值(如果您知道它的索引):

db.stuff.update(/* query ... */, {$set:{"arrayname.<index>":new_value}})

如果您的数组包含文档,您可以像这样在该索引处更新文档的特定字段:

db.stuff.update(/* query ... */, {$set:{"array_of_stuff.0.value":"new_value_of_thing_1"}})

// If you could use the query parameter and knew something
// about the value in the array you wanted to change:
db.stuff.update({"array_of_stuff.value":"value_of_thing_1"}, {$set:{"array_of_stuff.$.value":"new_value_of_thing_1"}})

关于mongodb - 更新 MongoDB 中数组元素的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18856961/

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