Mongodb:如何在查询中使用“不等于”


您可以在 MongoDB 中使用$ne运算符(意思是“不等于”)来查找字段不等于某个值的文档。

该运算符使用以下基本语法:

 db.myCollection.find({' team ': { $ne : " Mavs "}})

此特定示例搜索名为myCollection的集合中团队字段不等于“Mavs”的所有文档。

您还可以使用$nin运算符(意思是“不在”)来查找字段不等于列表中任何值的文档。

该运算符使用以下基本语法:

 db.myCollection.find({' team ': { $nin : [" Mavs ", " Cavs ", " Spurs "]}})

此特定示例搜索名为myCollection 的集合中的所有文档,其中team字段不等于“Mavs”、“Cavs”或“Spurs”。

以下示例展示了如何在收集团队的实践中使用每种方法,并提供以下文档:

 db.teams.insertOne({team: " Mavs ", points: 30, rebounds: 8})
db.teams.insertOne({team: " Spurs ", points: 35, rebounds: 12})
db.teams.insertOne({team: " Rockets ", points: 20, rebounds: 7})
db.teams.insertOne({team: " Warriors ", points: 25, rebounds: 5})
db.teams.insertOne({team: " Cavs ", points: 23, rebounds: 9})

示例 1:“不同”查询

以下代码显示如何查找team集合中“team”字段不等于“Mavs”的所有文档:

 db.teams.find({' team ': { $ne : " Mavs "}})

该查询返回以下文档:

 { _id: ObjectId("6203ec0e1e95a9885e1e7658"),
  team: 'Cavs',
  points: 23,
  rebounds: 9 }
{ _id: ObjectId("6203ec0e1e95a9885e1e7656"),
  team: 'Rockets',
  points: 20,
  rebounds: 7 }
{ _id: ObjectId("6203ec0e1e95a9885e1e7655"),
  team: 'Spurs',
  points: 35,
  rebounds: 12 }
{ _id: ObjectId("6203ec0e1e95a9885e1e7657"),
  team: 'Warriors',
  points: 25,
  rebounds: 5 }

请注意,如果team字段不等于“Mavs”,则会返回team集合中的每个文档。

注意$ne运算符区分大小写。

示例 2:“Not in”查询

以下代码显示如何在team集合中查找team字段不等于“Mavs”、“Cavs”或“Spurs”的所有文档:

 db.teams.find({' team ': { $nin : [" Mavs ", " Cavs ", " Spurs "]}})

该查询返回以下文档:

 { _id: ObjectId("6203ec0e1e95a9885e1e7656"),
  team: 'Rockets',
  points: 20,
  rebounds: 7 }
{ _id: ObjectId("6203ec0e1e95a9885e1e7657"),
  team: 'Warriors',
  points: 25,
  rebounds: 5 }

请注意,当球队字段不等于“Mavs”、“Cavs”或“Spurs”时,将返回球队集合中的每个文档。

注意#1 :您可以在此处找到$ne函数的完整文档。

注意#2 :您可以在此处找到$nin函数的完整文档。

其他资源

以下教程解释了如何在 MongoDB 中执行其他常见操作:

MongoDB:如何检查字段是否包含字符串
MongoDB:如何在特定字段中搜索“not null”
MongoDB:如何替换字符串

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注