MongoDB 提供了多種邏輯查詢操作符。 $not 運算符就是這些運算符之一。它類似於編程中的邏輯非運算符。 $not 運算符用於對指定的表達式執行邏輯 "NOT operation"。您可以將它與任何其他查詢表達式一起使用,例如等於 ($eq)、大於 ($gt) 或小於 ($lt)。
$not 運算符可以與正則表達式一起使用。它僅選擇或檢索那些與給定運算符表達式不匹配的文檔。用戶可以根據需要在 find()、update() 等方法中使用該運算符。
用法:
{ field:{ $not:{ operator-expression } } }
例子:
在以下示例中,我們正在使用:
Database:JavaTpoint
Collection:student
Document:Six documents that contain the details of the students
[
{
"std_name":"Jack",
"sex":"Male",
"class":"VI",
"age":11,
"Total_marks":303
"Result":"Pass"
},
{
"std_name":"Jenny",
"sex":"Female",
"class":"VI",
"age":13,
"Total_marks":800
"Result":"Pass"
},
{
"std_name":"Thomas",
"sex":"Male",
"class":"V",
"age":11,
" Total_marks":200
" Result":"Fail"
},
{
"std_name":"Lassy",
"sex":"Female",
"class":"X",
"age":17,
"Total_marks":550
"Result":"Pass"
},
{
"std_name":"Mia",
"sex":"Female",
"class":"X",
"age":19,
" Total_marks":350
"Result":"Pass"
},
{
"std_name":"Mike,
"sex":"Male",
"class":"V",
"age":16,
"Total_marks":700
"Result":"Pass"
}
]
示例 1:MongoDB 邏輯 $not 運算符(至少):
在這個例子中,我們隻檢索 "Total_marks" 至少為 400 的學生的數據。
db.student.find({"Total_marks":{$not:{$lt:400}}}).pretty()
SQL等效命令:
SELECT *
FROM student
WHERE Total_marks >= 400;
輸出:
>db.student.find({"Total_marks":{$not:{$lt:400}}}).pretty() { "_Id":ObjectId("4565d4cd85d4f1vf6345612"), "std_name":"Jenny", "sex":"Female", "class":"VI", "age":13, "Total_marks":800 "Result":"Pass" } { "_Id":ObjectId("4565d4cd85d4f1vf6345665"), "std_name":"Lassy", "sex":"Female", "class":"X", "age":17, "Total_marks":550 "Result":"Pass" } { "_Id":ObjectId("4565d4cd85d4f1vf6345756"), "std_name":"Mike, "sex":"Male", "class":"V", "age":16, "Total_marks":700 "Result":"Pass" }
示例 2:MongoDB 邏輯 $not 運算符(不大於):
在這個例子中,我們隻檢索 "age" 不大於 12 的學生的數據。
db.student.find({"age":{$not:{$gt:12}}}).pretty()
輸出:
>db.student.find({"age":{$not:{$gt:12}}}).pretty() { "_Id":ObjectId("4565d4cd85d4f545ffg43df7"), "std_name":"Jack", "sex":"Male", "class":"VI", "age":11, "Total_marks":303 "Result":"Pass" } { "_Id":ObjectId("4565d4cd85d4f545ffg43df7"), "std_name":"Thomas", "sex":"Male", "class":"V", "age":11, " Total_marks":200 " Result":"Fail" }
示例 3:MongoDB 邏輯 $not 運算符(不等於):
在這個例子中,我們隻檢索 "age" 不等於 11 的學生的數據。
db.student.find({"age":{$not:{$eq:11}}}).pretty()
輸出:
>db.student.find({"age":{$not:{$eq:11}}}).pretty() { "_Id":ObjectId("4565d4cd85d45d4dgf1fd5f4"), "std_name":"Jenny", "sex":"Female", "class":"VI", "age":13, "Total_marks":800 "Result":"Pass" } { "_Id":ObjectId("4565d4cd85d45d4dgf1fd55s"), "std_name":"Lassy", "sex":"Female", "class":"X", "age":17, "Total_marks":550 "Result":"Pass" } { "_Id":ObjectId("4565d4cd85d45d4d85331531"), "std_name":"Mia", "sex":"Female", "class":"X", "age":19, " Total_marks":350 "Result":"Pass" } { "_Id":ObjectId("4565d4cd85d45d4456c53154"), "std_name":"Mike, "sex":"Male", "class":"V", "age":16, "Total_marks":700 "Result":"Pass" }
相關用法
- MongoDB $mod用法及代碼示例
- MongoDB $floor用法及代碼示例
- MongoDB $ln用法及代碼示例
- MongoDB $reverseArray用法及代碼示例
- MongoDB $arrayElemAt用法及代碼示例
- MongoDB $and用法及代碼示例
- MongoDB $inc用法及代碼示例
- MongoDB $ceil用法及代碼示例
- MongoDB $max用法及代碼示例
- MongoDB $min用法及代碼示例
- MongoDB $exp用法及代碼示例
- MongoDB $toUpper用法及代碼示例
- MongoDB $concatArrays用法及代碼示例
- MongoDB $concat用法及代碼示例
- MongoDB $size用法及代碼示例
- MongoDB $subtract用法及代碼示例
- MongoDB $isArray用法及代碼示例
- MongoDB $divide用法及代碼示例
- MongoDB $toLower用法及代碼示例
- MongoDB $or用法及代碼示例
注:本文由純淨天空篩選整理自 MongoDB $not Operator。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。