gpt4 book ai didi

mongodb - 使用 mongo 查询按 id 更新数组元素

转载 作者:IT老高 更新时间:2023-10-28 13:31:40 29 4
gpt4 key购买 nike

对于 _id 1 的 id 为 2 的数组元素,是否有将 sc 从 15 更新为 17 的查询?我在 mongodb 中有这个结构:

  { _id: 1,
lb: [
{
id: 2,
sc: 15
},
{
id: 3,
sc: 16
}
]
}
{ _id: 2,
lb: [
{
id: 5,
sc: 34
},
{
id: 6,
sc: 12
}
]
}

我还有一个:有没有一种方法可以像您刚才所说的那样编写要更新的查询,如果没有具有更新 id 的数组元素,则插入一个新的。我不想进行两个查询 - 首先检查元素是否存在并更新它,如果不存在则附加它。将它附加到一个查询中会很好。谢谢。 – user3045201 1 小时前

最佳答案

您可以使用以下查询对其进行更新:

db.myCollection.update({"_id" : 1, "lb.id" : 2},{$set : {"lb.$.sc" : 17}})

AFAIK,不可能在单个查询中做你想做的事。您必须对它们中的每一个进行单独的查询。

关于mongodb - 使用 mongo 查询按 id 更新数组元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20262405/

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