是否按字段和子字段过滤MongoDB项目?

要按字段和子字段过滤项目,请使用点符号。让我们创建一个包含文档的集合-

> db.demo638.insert({Name:"Chris"});
WriteResult({ "nInserted" : 1 })
> db.demo638.insert({Name:"David",details:{Subject:"MongoDB"}});
WriteResult({ "nInserted" : 1 })

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

> db.demo638.find().pretty();

这将产生以下输出-

{ "_id" : ObjectId("5e9c28666c954c74be91e6de"), "Name" : "Chris" }
   {
      "_id" : ObjectId("5e9c28866c954c74be91e6df"),
      "Name" : "David",
      "details" : {
         "Subject" : "MongoDB"
   }
}

以下是按多个字段和子字段过滤项目的查询-

> db.demo638.find({"details.Subject":null});

这将产生以下输出-

{ "_id" : ObjectId("5e9c28666c954c74be91e6de"), "Name" : "Chris" }