實現 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 次檢視

開啟你的 職業生涯

完成課程獲得認證

開始學習
廣告