📜  MongoDB NOT运算符($ not)

📅  最后修改于: 2021-04-16 03:20:18             🧑  作者: Mango

MongoDB提供了不同类型的逻辑查询运算符,而$not运算符就是其中之一。该运算符用于对指定的运算符表达式执行逻辑“非”运算,并仅选择或检索与给定运算符表达式不匹配的那些文档。它还包括那些不包含该字段的文档。您可以根据需要在find()update()等方法中使用此运算符。

  • 始终将$ not运算符与其他运算符符一起使用,因为它不能独立检查字段和文档,而只会影响其他运算符。
  • 您可以将$ not运算符与正则表达式一起使用。
  • 此运算符的此运算符与其他运算符的行为一致,但是对于某些数据类型(如数组),可能会产生某些意外结果。

句法:

{ field: { $not: { operator-expression } } }

在以下示例中,我们正在使用:

使用$not运算符匹配值:

在此示例中,我们仅检索薪水不超过2000的那些雇员的文档。

db.contributor.find({salary: {$not: {$gt: 2000}}}).pretty()

使用$not运算符匹配嵌套/嵌入文档中的值:

在此示例中,我们仅检索年龄不等于24岁的那些雇员的文档。

db.contributor.find({"personal.age": {$not: {$eq: 24}}}).pretty()

使用$not运算符匹配数组中的值:

在此示例中,我们仅检索与给定数组不匹配的那些雇员的文档。

db.contributor.find({language: {$not: {$in: ["Java", "Perl"]}}}).pretty()