Javascript 子阵列上的MongoDB查询

Javascript 子阵列上的MongoDB查询,javascript,node.js,mongodb,sails.js,Javascript,Node.js,Mongodb,Sails.js,我有以下文件 { "_id" : "someId", "name" : "myTeam", "team" : [ { "entity" : "size", "value" : 14 }, { "entity" : "returns",

我有以下文件

{
   "_id" : "someId",
   "name" : "myTeam",
   "team" : [
                {
                    "entity" : "size",
                    "value" : 14
                },
                {
                    "entity" : "returns",
                    "value" : 45
                }
            ]
}
我需要检索值大于10的所有团队。在mongoDB中如何实现这一点?

您可以:

db.collection.find( { team: 
                         { $elemMatch: 
                              { value: 
                                  { $gt: 10 },
                                  entity: 'size'
                              } 
                         }
                      }
                  )

可以直接查询数组子文档:

db.collection.find({ "team.value" : { $gt : 10 } });
为您提供的解决方案:


db.collection.find({“team.value”:{$gt:10},“team.entity”:“size”})

嘿,很抱歉听起来很愚蠢,但如果我在这里提供id,我只会收到一个文档,如何获取所有大小大于10的团队。我试图删除第一个JSON,但它给了我一个错误Yes。。很抱歉,缺少一个
}
。那么您如何知道该值是用于大小还是用于返回?我不理解您的问题。