实现 nor 查询的 MongoDB 查询以提取除特定文档以外的文档


要提取除特定文档以外的文档,请使用 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 }

更新于:2020 年 3 月 30 日

134 次查看

开启你的 职业生涯

完成课程获得认证

开始学习
广告
© . All rights reserved.