我的文档中具有以下结构:
{
_id : ObjectId("43jh4j343j4j"),
array : [
{
_arrayId : ObjectId("dsd87dsa9d87s9d7"),
someField : "something",
someField2 : "something2"
},
{
_arrayId : ObjectId("sds9a0d9da0d9sa0"),
someField : "somethingElse",
someField2 : "somethingElse2"
}
]
}
我想更新 someField 和 someField2, 但仅更新数组中的一项,与 _arrayId 匹配的 项
(例如_arrayId : ObjectId("dsd87dsa9d87s9d7")
;并且仅针对此文档(例如_id : ObjectId("43jh4j343j4j")
)),而不更新其他项。
该 arrayIds 是不是唯一的,这就是为什么我需要它是针对特定文档的文档。$ positional operator
如果要为数组中存在的每个文档更新该值,则可以使用,但这不是我想要的。
我试图在Java中完成此操作,但也可以使用命令行解决方案。
您仍然可以使用$ positional
运算符来完成此操作。但是您需要指定父文档的objectid以及_arrayid过滤器。下面的命令行查询工作正常
db.so.update({_id:ObjectId("4e719eb07f1d878c5cf7333c"),
"array._arrayId":ObjectId("dsd87dsa9d87s9d7")},
{$set:{"array.$.someField":"updated"}})
在我的MongoDB中,我有文档,如下所示。如何更新内部文档结构中的文档:<code>〔{1},〔{2}〕,〔{3}〕、〔{4}〕</code>。 例如:子子文档中的子文档具有和以及 和
本文向大家介绍MongoDB文档中如何过滤特定值,包括了MongoDB文档中如何过滤特定值的使用技巧和注意事项,需要的朋友参考一下 要过滤特定值,请在MongoDB中使用$filter。让我们创建一个包含文档的集合- 在find()方法的帮助下显示集合中的所有文档- 这将产生以下输出- 以下是要过滤的查询- 这将产生以下输出-
我需要更新Mongo DB中另一个文档内的数组中的一个文档
本文向大家介绍使用MongoDB查询特定嵌套文档的对象数组,包括了使用MongoDB查询特定嵌套文档的对象数组的使用技巧和注意事项,需要的朋友参考一下 要查询对象数组中的嵌套文档,请使用find()。让我们创建一个包含文档的集合- 在find()方法的帮助下显示集合中的所有文档- 这将产生以下输出- 以下是如何查询对象数组以获取特定的嵌套文档- 这将产生以下输出-
将mongodb与pymongo一起使用,我有以下文档: 我想更新示例子文档(这是一个数组元素,因为可能有多个示例)。我有以下代码,但它不工作... 谁能告诉我这个有什么问题吗?
本文向大家介绍使用$ set和location $运算符更新数组中的特定MongoDB文档?,包括了使用$ set和location $运算符更新数组中的特定MongoDB文档?的使用技巧和注意事项,需要的朋友参考一下 要使用$set和positional运算符更新数组中的特定文档,请使用MongoDB 。该基于查询过滤器集合中更新单个文件。 让我们创建一个包含文档的集合- 在方法的帮助下显示集合