mongodb - 更新 mongodb 集合中的特定数组
问题描述
我的 Mongo 中有一个锦标赛集合,其中有一个文档“第 6 版”。在本文档中,有一个如下所示的数组字段:-
TeamDetails[0]:
[
TeamName : Team 1,
TeamOwner : Name,
]
TeamDetails[1]:
[
TeamName : Team 2,
TeamOwner : Name
]
Teamdetails 数组中总共有 10 个这样的元素。每个元素的 teamname 字段都是唯一的。无论如何我只能使用查询来更新一个元素,以根据团队名称进行识别?
就在更新之前,我有一组变量与数据一起进入这个模块。我想将这些变量更新为与团队名称匹配的特定数组。我知道使用 $push 运算符,但是我如何专门查询以更新 10 个元素中的那个元素。这可能吗?我正在使用带有 Node js 的猫鼬
解决方案
您的锦标赛收藏,例如:
_id: 123456
TeamDetails: [
{
TeamName : Team 1,
TeamOwner : Name,
},
{
TeamName : Team 2,
TeamOwner : Name,
}
]
Tournament.updateOne({ _id: 123456, 'TeamDetails.TeamName': 'Team 1' },
{ '$set': { 'TeamDetails.$.TeamOwner': 'Hello'} });
结果将是:
_id: 123456
TeamDetails: [
{
TeamName : Team 1,
TeamOwner : Hello,
},
{
TeamName : Team 2,
TeamOwner : Name,
}
]
有关更多详细信息,您可以在此文档中阅读
推荐阅读
- html - app.facebook.com 身份验证过程中的 Safari X-Frame-Options DENY 错误
- reactjs - 如何在 setTimeout 后修复 setState
- google-bigquery - 安排查询以在 BigQuery 中的项目之间复制数据集中的数据
- python - 在 C++ 中加载和使用使用 LSTM 网络构建的 Keras 模型或在 iOS 应用程序中部署该模型
- rest - 如何使用 jersey 在现有的 JSF 应用程序中集成休息服务?
- macos - 在 Mac 上的真实移动设备上查看 .NET Core 项目
- python - Python程序给出n值并使用for循环计算n+nn+nnn的值
- flutter - 在 AppBar 和 TabBarView 下设置高度
- macos - 在 10.14 中调整 NSPopover 闪烁的大小
- php - 无法在 api 控制器 Yii2 中获取配置参数值