📜  MongoDB – $ nin运算符(1)

📅  最后修改于: 2023-12-03 15:17:41.823000             🧑  作者: Mango

MongoDB – $nin 运算符

在 MongoDB 中,$nin 运算符用于匹配不在指定数组中的值。它是$in运算符的反义词。

语法
{ field: { $nin: [value1, value2, ...]} }

其中:

  • field:要匹配的字段名。
  • value1, value2, ...:指定的数组。如果要匹配的数据不在该数组中,则匹配成功。
示例
db.users.find({ age: { $nin: [18, 21] } })

上述代码将返回所有年龄不为 18 或 21 的用户。

注意事项
  • $nin 运算符与 $in 运算符在匹配 null 值时的行为不同。如果数组中有 null 值,$in 运算符将会匹配没有该字段的文档,而 $nin 运算符会将 null 视为一个有效的值进行匹配。因此,在使用 $nin 运算符时要注意字段中是否有 null 值。

  • $nin 运算符可以与其他 MongoDB 查询运算符一起使用,如 $gt、$lt 等。

总结

$nin 运算符是 MongoDB 中的一种查询运算符,它可以用来匹配不在指定数组中的值。在使用时需要注意与 $in 运算符不同的特性,以及其它查询运算符的结合使用。