Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.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
Arrays 无法使用$pullAll_Arrays_Mongodb_Pull - Fatal编程技术网

Arrays 无法使用$pullAll

Arrays 无法使用$pullAll,arrays,mongodb,pull,Arrays,Mongodb,Pull,我有一个集合,其中包含如下所示的文档 { "_id" : ObjectId("56d92901f9d573cc1c1fb8bb"), "busEntryExitInformation" : { "dateTime" : ISODate("2016-03-04T06:19:45.914+0000"), "busEntryExitEvent" : [ { "plateNumber" : "A

我有一个集合,其中包含如下所示的文档

{ 
    "_id" : ObjectId("56d92901f9d573cc1c1fb8bb"), 
    "busEntryExitInformation" : {
        "dateTime" : ISODate("2016-03-04T06:19:45.914+0000"), 
        "busEntryExitEvent" : [
            {
                "plateNumber" : "ADFN3R2", 
                "direction" : "EXIT", 
                "routeNumber" : NumberInt(929), 
                "driverID" : "DId5", 
                "driverName" : "john", 
                "_id" : ObjectId("56d92901f9d573cc1c1fb8c0")
            }, 
            {
                "plateNumber" : "ADFN3R4", 
                "direction" : "EXIT", 
                "routeNumber" : NumberInt(652), 
                "driverID" : "DId2", 
                "driverName" : "jack", 
                "_id" : ObjectId("56d92901f9d573cc1c1fb8bf")
            }, 
            {
                "plateNumber" : "ADFN3R8", 
                "direction" : "EXIT", 
                "routeNumber" : NumberInt(500), 
                "driverID" : "DId5", 
                "driverName" : "john", 
                "_id" : ObjectId("56d92901f9d573cc1c1fb8be")
            }, 
            {
                "plateNumber" : "ADFN3R7", 
                "direction" : "ENTRY", 
                "routeNumber" : NumberInt(500), 
                "driverID" : "DId3", 
                "driverName" : "mack", 
                "_id" : ObjectId("56d92901f9d573cc1c1fb8bd")
            }, 
            {
                "plateNumber" : "ADFN3R2", 
                "direction" : "EXIT", 
                "routeNumber" : NumberInt(652), 
                "driverID" : "DId2", 
                "driverName" : "sandesh", 
                "_id" : ObjectId("56d92901f9d573cc1c1fb8bc")
            }
        ], 
        "cameraIntrinsics" : {
            "cameraFocalLength" : NumberInt(35), 
            "cameraAngle" : NumberInt(20), 
            "imageWidth" : "1920", 
            "imageHeight" : "1080", 
            "frameRate" : NumberInt(25)
        }, 
        "cameraExtrinsics" : {
            "cameraId" : NumberInt(1), 
            "cameraName" : "Under Route-090 NorthboundBridge", 
            "cameraDirection" : "Towards Northbound Lanes", 
            "cameraLatitude" : 1.350228, 
            "cameraLongitude" : 103.984889, 
            "cameraHeight" : NumberInt(30)
        }
    }, 
    "__v" : NumberInt(0)
}
}
其中BusEntryExiteEvent是一个数组,我正在尝试删除数组元素,其中方向是集合中所有文档的出口 结果应包含所有带方向输入的文档

  { 
        "_id" : ObjectId("56d92901f9d573cc1c1fb8bb"), 
        "busEntryExitInformation" : {
            "dateTime" : ISODate("2016-03-04T06:19:45.914+0000"), 
            "busEntryExitEvent" : [

                {
                    "plateNumber" : "ADFN3R7", 
                    "direction" : "ENTRY", 
                    "routeNumber" : NumberInt(500), 
                    "driverID" : "DId3", 
                    "driverName" : "mack", 
                    "_id" : ObjectId("56d92901f9d573cc1c1fb8bd")
                }
            ], 
            "cameraIntrinsics" : {
                "cameraFocalLength" : NumberInt(35), 
                "cameraAngle" : NumberInt(20), 
                "imageWidth" : "1920", 
                "imageHeight" : "1080", 
                "frameRate" : NumberInt(25)
            }, 
            "cameraExtrinsics" : {
                "cameraId" : NumberInt(1), 
                "cameraName" : "Under Route-090 NorthboundBridge", 
                "cameraDirection" : "Towards Northbound Lanes", 
                "cameraLatitude" : 1.350228, 
                "cameraLongitude" : 103.984889, 
                "cameraHeight" : NumberInt(30)
            }
        }, 
        "__v" : NumberInt(0)
    }
    }  
我正试着这样做

db.busEntryExitDoc.update(
      {  $pull: { busEntryExitEvent: {  "direction" : "EXIT"} } },
      { multi: false }
      )

必须对所有文档执行此操作此处没有where条件如何执行请帮助

您做错了第一个参数是“query”参数,此处应为空文档

db.busEntryExitDoc.update(
{},
{$pull:{“busEntryExitInformation.BusEntryExiteEvent”:{“方向”:“退出”}},
{multi:true}
)
同样的道理也适用于这种方法

db.busEntryExitDoc.update(
{},
{$pull:{“busEntryExitInformation.BusEntryExiteEvent”:{“方向”:“退出”}},
)

您做错了第一个参数是“query”参数,它在这里应该是一个空文档

db.busEntryExitDoc.update(
{},
{$pull:{“busEntryExitInformation.BusEntryExiteEvent”:{“方向”:“退出”}},
{multi:true}
)
同样的道理也适用于这种方法

db.busEntryExitDoc.update(
{},
{$pull:{“busEntryExitInformation.BusEntryExiteEvent”:{“方向”:“退出”}},
)
MongoDB
update()
方法需要三个参数:
db.collection.update(查询、更新、选项)
。如果要对所有文档执行
更新
,只需使用空对象作为
查询

db.busEntryExitDoc.update({},
    { $pull: { 'busEntryExitInformation.busEntryExitEvent' : {'direction' : "EXIT"} } },
    { multi: true }
);
另外,请注意使用来访问数组字段:必须将运算符指向数组,否则操作将失败。最后,使用
{multi:true}
作为更新集合中的所有文档。

MongoDB
update()
方法需要三个参数:
db.collection.update(查询、更新、选项)
。如果要对所有文档执行
更新
,只需使用空对象作为
查询

db.busEntryExitDoc.update({},
    { $pull: { 'busEntryExitInformation.busEntryExitEvent' : {'direction' : "EXIT"} } },
    { multi: true }
);

另外,请注意使用来访问数组字段:必须将运算符指向数组,否则操作将失败。最后,使用
{multi:true}
因为你想更新你收藏中的所有文档。

对我帮助很大,对我帮助很大