如何使用 MongoDB 中的 Nand 運算子進行查詢?
$not 運算子不會顛倒一個複雜表示式。因此,請使用 $and 或 $or 及 $ne 運算子。
讓我們建立一個帶有文件的集合 −
> db.demo266.insertOne({"active1":true,"active2":false});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e480f4b1627c0c63e7dbaa7")
}
> db.demo266.insertOne({"active1":true,"active2":true});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e480f501627c0c63e7dbaa8")
}
> db.demo266.insertOne({"active1":false,"active2":false});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e480f561627c0c63e7dbaa9")
}
> db.demo266.insertOne({"active1":false,"active2":true});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e480f701627c0c63e7dbaaa")
}使用 find() 方法顯示集合中的所有文件 −
> db.demo266.find();
這將產生以下輸出 −
{ "_id" : ObjectId("5e480f4b1627c0c63e7dbaa7"), "active1" : true, "active2" : false }
{ "_id" : ObjectId("5e480f501627c0c63e7dbaa8"), "active1" : true, "active2" : true }
{ "_id" : ObjectId("5e480f561627c0c63e7dbaa9"), "active1" : false, "active2" : false }
{ "_id" : ObjectId("5e480f701627c0c63e7dbaaa"), "active1" : false, "active2" : true }以下是使用 $or 及 $ne 運算子的查詢 −
> db.demo266.find({$or:[{"active1":{"$ne":true}},{"active2":{"$ne":true}}]});這將產生以下輸出 −
{ "_id" : ObjectId("5e480f4b1627c0c63e7dbaa7"), "active1" : true, "active2" : false }
{ "_id" : ObjectId("5e480f561627c0c63e7dbaa9"), "active1" : false, "active2" : false }
{ "_id" : ObjectId("5e480f701627c0c63e7dbaaa"), "active1" : false, "active2" : true }
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP