对于完全匹配,可以使用$exists检查匹配。让我们创建一个包含文档的集合-
> db.demo290.insertOne({"ListOfName":"Chris"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e4c0c9e5d93261e4bc9ea2d")
}
> db.demo290.insertOne({"ListOfName":["Chris","David"]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e4c0cb05d93261e4bc9ea2e")
}在find()方法的帮助下显示集合中的所有文档-
> db.demo290.find();
这将产生以下输出-
{ "_id" : ObjectId("5e4c0c9e5d93261e4bc9ea2d"), "ListOfName" : "Chris" }
{ "_id" : ObjectId("5e4c0cb05d93261e4bc9ea2e"), "ListOfName" : [ "Chris", "David" ] }这是一个值的精确匹配的查询-
> db.demo290.find({$and: [{'ListOfName.0': {$exists: false}}, {"ListOfName": 'Chris'}]});这将产生以下输出-
{ "_id" : ObjectId("5e4c0c9e5d93261e4bc9ea2d"), "ListOfName" : "Chris" }