在MongoDB中删除子集合中的对象?

要删除子集合中的对象,请在MongoDB中使用$pull。让我们创建一个包含文档的集合-

> db.demo715.insertOne({

...    _id:1,

...    details :

...    [

...       { 'id' : '101',

...       'Information' : [

...          {

...             'studentid' : '102',

...             "Name":"Bob"

...          },

...          {

...             'studentid' : '103',

...             "Name":"Chris"

...          }

...       ]

...    }

... ]

... });

{ "acknowledged" : true, "insertedId" : 1 }

find()方法的帮助下显示集合中的所有文档-

> db.demo715.find();

这将产生以下输出-

{ "_id" : 1, "details" : [ { "id" : "101", "Information" : [ { "studentid" : "102", "Name" : "Bob" }, { "studentid" : "103", "Name" : "Chris" } ] } ] }

以下是在MongoDB的子集合中删除对象的查询-

> db.demo715.update(

...    {"details.id":'101'},

...    { $pull: { 'details.$.Information':{studentid:'102',"Name":"Bob"} } }

... );

WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

find()方法的帮助下显示集合中的所有文档-

> db.demo715.find();

这将产生以下输出-

{ "_id" : 1, "details" : [ { "id" : "101", "Information" : [ { "studentid" : "103", "Name" : "Chris" } ] } ] }

以上是 在MongoDB中删除子集合中的对象? 的全部内容, 来源链接: utcz.com/z/327222.html

回到顶部