要获取除特定文档以外的文档,请在MongoDB中使用$nor设置要丢失的文档。让我们创建一个包含文档的集合-
> db.demo100.insertOne({"Name":"Chris","Age":21}); { "acknowledged" : true, "insertedId" : ObjectId("5e2d9624b8903cdd865577c0") } > db.demo100.insertOne({"Name":"David","Age":23}); { "acknowledged" : true, "insertedId" : ObjectId("5e2d962cb8903cdd865577c1") } > db.demo100.insertOne({"Name":"Bob","Age":19}); { "acknowledged" : true, "insertedId" : ObjectId("5e2d9634b8903cdd865577c2") }
在find()
方法的帮助下显示集合中的所有文档-
> db.demo100.find();
这将产生以下输出-
{ "_id" : ObjectId("5e2d9624b8903cdd865577c0"), "Name" : "Chris", "Age" : 21 } { "_id" : ObjectId("5e2d962cb8903cdd865577c1"), "Name" : "David", "Age" : 23 } { "_id" : ObjectId("5e2d9634b8903cdd865577c2"), "Name" : "Bob", "Age" : 19 }
以下是在MongoDB中实现NOR查询的查询-
> db.demo100.find({ $nor: [ { Name:"Chris" }, { Name: { $exists: false } }, { Age: 21 }, { Age: { $exists: false } } ] } );
这将产生以下输出-
{ "_id" : ObjectId("5e2d962cb8903cdd865577c1"), "Name" : "David", "Age" : 23 } { "_id" : ObjectId("5e2d9634b8903cdd865577c2"), "Name" : "Bob", "Age" : 19 }