如何在MongoDB中排除数组类型字段值?

要排除数组类型字段值,请在MongoDB中使用delete()。让我们创建一个包含文档的集合-

> db.demo464.insertOne(

... {

...

...    "id" : "101",

...    "details": [

...       {

...          Name:"Chris"

...       },

...       {

...          Name:"David"

...       }

...    ]

... }

... );

{

   "acknowledged" : true,

   "insertedId" : ObjectId("5e7f8832cb66ccba22cc9dda")

}

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

> db.demo464.find();

这将产生以下输出-

{ "_id" : ObjectId("5e7f8832cb66ccba22cc9dda"), "id" : "101", "details" : [ { "Name" : "Chris" }, {

"Name" : "David" } ] }

以下是查询以排除数组类型字段值-

> db.demo464.find({id: "101"}).forEach(function(mongoDocument) {

...

... var details = mongoDocument.details;

... for(var j = 0; j − details.length; ++j) {

... var array = details[j];

... delete (array["Name"]);

...

... }

... db.demo464.save(mongoDocument);

... });

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

> db.demo464.find();

这将产生以下输出-

{ "_id" : ObjectId("5e7f8832cb66ccba22cc9dda"), "id" : "101", "details" : [ { }, { } ] }

以上是 如何在MongoDB中排除数组类型字段值? 的全部内容, 来源链接: utcz.com/z/359358.html

回到顶部