mongodb - 未找到的查找中的 Mongo Upsert $in 值
问题描述
我必须为链接到 supervisorId 的员工 id 运行 mongo 更新(这过于简单化了,但它是我需要的要点)。查找使用员工 ID 列表,如果找不到员工 ID,我有一个 upsert 来添加数据。但是问题是我没有在 upsert 中获取员工 ID。是否可以从 $in 数组中插入值?
例如:
db.collection.update({
empId:{
$in:['EMP1','EMP2','EMP3']
}
},
{$set: {SupervisorId:'SUP25'}},
{upsert:true},
{multi:true})
如果我运行这个查询,我会得到一个带有 _id 和 SupervisorId 的新文档:
{
"_id" : ObjectId("5e56ece8b0ae3537d0261ghg"),
"SupervisorId" : "SUP25"
}
我想在我的 upserts 中得到这个:
{
"_id" : ObjectId("5e56ece8b0ae3537d0261ghg"),
"SupervisorId" : "SUP25"
"EmpId": "EMP1"
}
我仍然对 mongo 感到满意,但这甚至可以通过 upsert 实现吗?如果不可能,是否有类似的选择?MongoDB 版本 2.9.1
解决方案
推荐阅读
- mysql - 使用数据库建模方法时,如何在视图中显示和隐藏特定数据字段?
- c# - 插入后图像列中的值与预期不同
- asp.net-mvc - ASP.NET MVC 和 Angular 6 之间的单点登录
- python - 提高列表中的性能
- elasticsearch - Elasticsearch 随机返回索引中包含条目的查询的空结果
- firebase - 给云函数一个唯一的uid?
- python - 在python中放置break和return语句
- c++ - 我怎样才能有一个受约束的运算符模板?
- c# - 导致 CS0119 错误的 LINQ 连接查询结构
- google-api - 来自 Google Contacts API 近一个月的奇怪错误