node.js - 如何使用 mongodb 查询从深度集合中删除文档?

标签 node.js mongodb

{
    "_id" : ObjectId("5728443e04b2e5b42073a361"),
    "user_id" : ObjectId("5728443e04b2e5b42073a35f"),
    "main" : {
        "data_to_save" : [ 
            {
                "user_profile_id" : ObjectId("572844bc04b2e5b42073a362")
                "_id" : ObjectId("57284ab183e62da222e1378b"),
                "details" : [ 
                    {
                        "amount" : 10000,
                        "_id" : ObjectId("57284f42e4560b66238a637c"),
                        "modified" : ISODate("2016-05-03T12:42:02.927Z"),
                        "created" : ISODate("2016-05-03T12:42:02.927Z")
                    }, 
                    {
                        "amount" : 4000
                        "_id" : ObjectId("57284f42e4560b66238a637b"),
                        "modified" : ISODate("2016-05-03T12:42:02.927Z"),
                        "created" : ISODate("2016-05-03T12:42:02.927Z")
                    }
                ]
            }
        ]
    }
    "__v" : 0
}

在 mongoDB 的数据库模式中。在这里我想删除特定集合的特定文档。 就像我想删除详细信息集合的第一个文档一样。我有该特定文档的 _id ( 57284f42e4560b66238a637c )。

尝试过

connection.collection.remove( { 'main.data_to_save.0.details.$._id' : id }, function ( err, removed ) {});

最佳答案

您可以使用 $pull 运算符从一组文档中删除一个或多个条目:

// mainDocId = ObjectId("5728443e04b2e5b42073a361")
// id = ObjectId("57284f42e4560b66238a637c")
connection.collection.update(
    { _id: mainDocId},
    { $pull: {'main.data_to_save.0.details' : id } }, function ( err, result ) {

});

关于node.js - 如何使用 mongodb 查询从深度集合中删除文档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37001457/

相关文章:

javascript - 尝试将对象从客户端发送到服务器(AngularJS $http.post)

node.js - 中间件不重定向

node.js - 未找到清晰度 Angular (404 错误)

node.js - Heroku + MongoLab 插件与 Node.js 应用程序的连接错误 - 错误 : connect ECONNREFUSED 127. 0.0.1:27017

javascript - 有没有办法在 node-mongodb-native 中使用动态 key ?

javascript - 通过在 Node 中发出 http 请求来验证表单输入

node.js - 代理的 websocket 连接立即关闭

html - 启动一个 node.js 项目

mongodb - Spring Data MongoDB 基于集合的 Multi-Tenancy

json - NodeJS + Mongo 如何查找并返回 JSON