如何在MongoDB中取消设置对象?

要在MongoDB中取消设置对象,请使用$unset。让我们创建一个包含文档的集合-

> db.demo348.insertOne(
...    {
...    "details": {
...       "studentDetails":
...          {
...             StudentName: "Robert"
...          }
...    }
...
... });
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e553556f8647eb59e5620b2")
}
> db.demo348.insertOne(
... {
...    "details": {
...       "studentDetails":
...          {
...             StudentName: "Mike"
...          }
...    }
...
... });
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e553563f8647eb59e5620b3")
}

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

> db.demo348.find();

这将产生以下输出&mius;。

{ "_id" : ObjectId("5e553556f8647eb59e5620b2"), "details" : { "studentDetails" : { "StudentName" : "Robert" } } }
{ "_id" : ObjectId("5e553563f8647eb59e5620b3"), "details" : { "studentDetails" : { "StudentName" : "Mike" } } }

以下是取消设置对象的查询-

> db.demo348.update({},{$unset: { "details.studentDetails": ""}},{multi: true});
WriteResult({ "nMatched" : 2, "nUpserted" : 0, "nModified" : 2 })

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

> db.demo348.find();

这将产生以下输出-

{ "_id" : ObjectId("5e553556f8647eb59e5620b2"), "details" : { } }
{ "_id" : ObjectId("5e553563f8647eb59e5620b3"), "details" : { } }