Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb Mongo DB:从集合中删除文档_Mongodb - Fatal编程技术网

Mongodb Mongo DB:从集合中删除文档

Mongodb Mongo DB:从集合中删除文档,mongodb,Mongodb,这是我收藏的“实体”文档之一,我不知道如何删除它 { "_id" : { "id" : "sensors:StreetLight2", "type" : "sensors", "servicePath" : "/egmmqttpath" }, "attrNames" : [ "TimeInstant", "PING_status" ], "attrs" : {

这是我收藏的“实体”文档之一,我不知道如何删除它

 {
    "_id" : {
        "id" : "sensors:StreetLight2",
        "type" : "sensors",
        "servicePath" : "/egmmqttpath"
    },
    "attrNames" : [
        "TimeInstant",
        "PING_status"
    ],
    "attrs" : {
        "PING_status" : {
            "value" : "delivered but no respond",
            "type" : "string",
            "md" : [
                {
                    "name" : "TimeInstant",
                    "type" : "ISO8601",
                    "value" : "2015-11-20T09:02:53.114688"
                }
            ],
            "creDate" : 1448010161,
            "modDate" : 1448010172
        },
        "TimeInstant" : {
            "value" : "2015-11-20T09:02:53.114834",
            "type" : "ISO8601",
            "creDate" : 1448010122,
            "modDate" : 1448010172
        }
    },
    "creDate" : 1448010122,
    "modDate" : 1448010172
}
db.entities.remove({
    "_id" : {
        "id" : "sensors:StreetLight2",
        "type" : "sensors",
        "servicePath" : "/egmmqttpath"
    }
})
有什么想法吗?如何删除上述文档?提前感谢。

在中,您应该使用:

db.entities.remove(
{
“_id”:
{
“id”:“传感器:路灯2”,
“类型”:“传感器”,
“服务路径”:“/egmmqttpath”
}
})

我会传递_id来删除它

 {
    "_id" : {
        "id" : "sensors:StreetLight2",
        "type" : "sensors",
        "servicePath" : "/egmmqttpath"
    },
    "attrNames" : [
        "TimeInstant",
        "PING_status"
    ],
    "attrs" : {
        "PING_status" : {
            "value" : "delivered but no respond",
            "type" : "string",
            "md" : [
                {
                    "name" : "TimeInstant",
                    "type" : "ISO8601",
                    "value" : "2015-11-20T09:02:53.114688"
                }
            ],
            "creDate" : 1448010161,
            "modDate" : 1448010172
        },
        "TimeInstant" : {
            "value" : "2015-11-20T09:02:53.114834",
            "type" : "ISO8601",
            "creDate" : 1448010122,
            "modDate" : 1448010172
        }
    },
    "creDate" : 1448010122,
    "modDate" : 1448010172
}
db.entities.remove({
    "_id" : {
        "id" : "sensors:StreetLight2",
        "type" : "sensors",
        "servicePath" : "/egmmqttpath"
    }
})

删除mongodb中的文档

query = {"_id": <value of _id>}

db.entities.remove(query)
query={“\u id”:
db.entities.remove(查询)
您还可以从文档中获取任何键值对以进行删除

为了更好地理解,您可以参考这些链接

来自:

db.collection.remove()

从集合中删除文档

1)通过_ID:因为_ID是唯一的

db.entities.remove( {"_id" :
    {
        "id" : "sensors:StreetLight2",
        "type" : "sensors",
        "servicePath" : "/egmmqttpath"
    }
})

哇,这太错了。您的语法中有两个错误。但即使在修复它们之后,也不会删除文档。您没有匹配正确的
\u id
文档。如果您觉得语法错误,并且如果您想在开源社区中贡献自己的力量,而不是支持他人,那么您可以对其进行编辑。我通过提供我已验证有效的正确答案来贡献自己的力量。答案被否决了。1)你需要通过一个物体。对象文字始终由大括号包围。未正确指定对象文字,因此将出现语法错误。2)如果不使用,则无法在单个字段上匹配子文档。因此,您的查询不会删除有问题的文档。它的
\u id
包含三个字段,而不是一个。哇,在这个线程中向下投票选择正确答案,向上投票选择错误答案是怎么回事?“这太疯狂了!”德米特罗舍甫琴科我理解你的痛苦。我不明白像“db.entities.remove(query)”这样的一般注释是如何得到3票而我得到-2票的。如果你发现我的评论有什么问题,请告诉我。很高兴删除或修改它。您的答案在我看来完全正确,这就是为什么我对它投了更高的票。@VedantKekan请标记此问题(或其部分答案)以引起版主的注意。您的删除标准是什么?