如何在MongoDB中搜索时忽略某个字段

如何在MongoDB中搜索时忽略某个字段,mongodb,mongodb-query,Mongodb,Mongodb Query,假设我有一个MongDB记录,如下所示: { 姓名:“姓名”, 溪流:[ {user:“user0”,name:“name0”,locked:true}, {user:“user1”,name:“name1”,locked:true}, {用户:“user2”,名称:“name2”,锁定:false} } } 我想在streams字段中查找所有包含user0和name0的记录,但我不关心锁定的字段 find({streams:{user:“user0”,name:“name0”}})不起作用,因

假设我有一个MongDB记录,如下所示:

{ 姓名:“姓名”, 溪流:[ {user:“user0”,name:“name0”,locked:true}, {user:“user1”,name:“name1”,locked:true}, {用户:“user2”,名称:“name2”,锁定:false} } }

我想在streams字段中查找所有包含user0和name0的记录,但我不关心锁定的字段

find({streams:{user:“user0”,name:“name0”}})不起作用,因为没有指定锁定的字段

谢谢,, Gary

您正在寻找允许您从数组中的子文档中选择符合您条件的字段的运算符:

db.collection.find({
“streams”:{“$elemMatch”:{“user”:“user0”,“name”:“name0”}
})
花些时间浏览一下手册中的内容。那里有很多有用的操作