이 버전의 문서는 보관되어 더 이상 지원되지 않습니다. 6.0 배포서버 업그레이드 하려면 MongoDB 7.0 업그레이드 절차를 참조하세요.
정의
- $not
- 불(boolean)을 평가하고 반대 불 값을 반환합니다. 즉, - true으로 평가되는 표현식을 전달하면- $not이- false을 반환하고,- false으로 평가되는 표현식을 전달하면- $not이- true을 반환합니다.- $not의 구문은 다음과 같습니다:- { $not: [ <expression> ] } - 표현식에 대한 자세한 내용은 표현식을 참조하세요. 
행동
false 부울 값 외에도 $not는 null, 0, undefined을 false로 평가합니다. $not는 0이 아닌 숫자 값과 배열을 포함하여 다른 모든 값을 true로 평가합니다.
| 예시 | 결과 | 
|---|---|
| 
 | 
 | 
| 
 | 
 | 
| 
 | 
 | 
| 
 | 
 | 
| 
 | 
 | 
예시
다음 문서가 포함된 inventory 컬렉션을 생각해 보세요.
db.inventory.insertMany( [    { _id: 1, item: "abc1", description: "product 1", qty: 300 },    { _id: 2, item: "abc2", description: "product 2", qty: 200 },    { _id: 3, item: "xyz1", description: "product 3", qty: 250 },    { _id: 4, item: "VWZ1", description: "product 4", qty: 300 },    { _id: 5, item: "VWZ2", description: "product 5", qty: 180 } ] ) 
다음 연산은 $not 연산자를 사용해 qty가 250보다 크지 않은지 확인합니다.
db.inventory.aggregate(    [      {        $project:           {             item: 1,             result: { $not: [ { $gt: [ "$qty", 250 ] } ] }           }      }    ] ) 
이 연산은 다음과 같은 결과를 반환합니다.
{ _id: 1, item: "abc1", result: false } { _id: 2, item: "abc2", result: true } { _id: 3, item: "xyz1", result: true } { _id: 4, item: "VWZ1", result: false } { _id: 5, item: "VWZ2", result: true }