我有一个接受文档ID的endpoint,以及一个嵌套数组中希望更新的Employee对象。这很好用。我试着修改endpoint,让它一次更新一个以上的员工,但我不能让它工作。我不确定是我把格式搞错了,还是不可能。
{
"id": <ID>
...
"employeeList": [
{
"employeeId": <Employee_ID>,
...
}
...
]
}
Query query = new Query().addCriteria(new Criteria("id").is(id))
.addCriteria(new Criteria("employeeList.employeeId").is(employee.getEmployeeId());
update.set("employeeList.$", employee);
UpdateResult result = mongoTemplate.updateFirst(query, update, Census.class);
我能做吗?唯一的其他选项是连续多次更新此文档吗?我认为这样做比调用endpointX次要好。我在Mongo3.6以防影响任何答案。蒂娅。
对不起,你的帖子不清楚。您显示数组字段EmployeeList-您是否试图向数组添加值?是单个文档还是所有文档?
如果不向现有数组字段添加值-那么您是否正在向所有文档添加一个新字段?
给定对象数组: 如何构造查询,以便在DB中更新每个文档的名称字段,其中文档的id等于数组对象中的\u id? 这必须在单个查询中完成。查询必须使用mongoDB节点驱动程序语法。 例如:
假设我们有以下集合,我对此没有什么问题: > 我想增加“item_name”的价格:“my_item_two”,如果它不存在,应该将它追加到“items”数组中。
我想使用mongoose从多个文档更新多个子文档。 我目前的代码是: 模式的一部分是: 但是这段代码只更新id arr中的最后一个元素。
本文向大家介绍MongoDB中一次查询更新多个文档,包括了MongoDB中一次查询更新多个文档的使用技巧和注意事项,需要的朋友参考一下 要通过单个查询更新许多文档,请在MongoDB中使用 bulkWrite()。让我们创建一个包含文档的集合- 在find()方法的帮助下显示集合中的所有文档- 这将产生以下输出- 以下是使用MongoDB中的一个查询来更新许多文档的查询- 在find()方法的帮助
我正在尝试在我的Mongo数据库中插入一个新文档,如下所示: 正在工作,但不是我想要的。 “json”是一个对象数组,如下所示: 所以,我的代码为object创建了一个文档,我只想创建一个文档,其中包含一个名为json的属性中的对象: 这可能吗? 我试图使用插入,也。 谢谢。
我需要更新Mongo DB中另一个文档内的数组中的一个文档