mongodb - MongoDB:从文档中的数组中删除 JSON
问题描述
我想从文档中的数组中删除 json。我的文件是这样的:
{
"_id" : ObjectId("5c2f9a15a372ef8825b18736"),
"class_section" : [
{
"class_id" : "1",
"section_id" : "A"
},
{
"class_id" : "2",
"section_id" : "A"
}
],
"registered_time" : ISODate("2019-01-04T17:38:29.753Z"),
"__v" : 0
}
删除"class_id": "2"和"section_id": "A"两个条件后,我需要以下内容
{
"_id" : ObjectId("5c2f9a15a372ef8825b18736"),
"class_section" : [
{
"class_id" : "1",
"section_id" : "A"
}
],
"registered_time" : ISODate("2019-01-04T17:38:29.753Z"),
"__v" : 0
}
我怎样才能在 MongoDB 中做到这一点?
解决方案
尝试使用 $pull 运算符更新文档
collection.update(
{},
{ $pull: { "class_section": { class_id: '2' } } }
);
推荐阅读
- sql - 'WITH' 子句不适用于 in 运算符
- elasticsearch - 如何在 laravel scout 和弹性搜索中使搜索更有效?
- django - ValueError - 视图没有返回 HttpResponse 对象。它返回 None 而不是
- vue.js - 使用 Vuetify v-rating 模块测试组件时,“TypeError:无法读取未定义的属性‘isFilled’”
- entity-framework - 出现错误此操作需要连接到“主”数据库
- amazon-web-services - 将 S3 快照数据迁移到 Aurora 实例
- python - 在带有 MSAL 的 Python 守护程序应用程序中使用 Azure Active Directory 对 Azure Functions 应用程序进行身份验证
- javascript - 下载文件时强制显示“另存为”对话框
- c++ - 如何添加成员函数,例如 Boost Log 过滤器?
- mongodb - 更新 mongo db 中的所有记录