晚上好。
我在MongoDB中有这个数组:
AllegriTeams数组是对名为 coach 的集合的第一个查询的结果。我必须使用此数组对另一个名为 team 的查询进行第二次查询:
> db.team.find({_id:AllegriTeams[0].team_id}, {_id:0, official_name:1})
{ "official_name" : "Juventus Football Club S.p.A." }
> db.team.find({_id:AllegriTeams[1].team_id}, {_id:0, official_name:1})
{ "official_name" : "Associazione Calcio Milan S.p.A" }
> db.team.find({_id:AllegriTeams[2].team_id}, {_id:0, official_name:1})
{ "official_name" : "Cagliari Calcio S.p.A" }
有没有办法迭代数组并自动对团队集合进行查询?例如使用for或while循环? 我试过了:
while(AllegriTeams.hasNext())
db.team.find({AllegriTeams.next().team_id}, {_id:0, official_name:1})
但它不起作用。
谢谢。
答案 0 :(得分:1)
修改强>
for(var i=0; i < AllegriTeams.length; i++) {
db.team.find({_id: AllegriTeams[i].team_id}, {_id:0, official_name:1})
}
第二次查找的语法不正确应该是
while(AllegriTeams.hasNext()) {
db.team.find({_id: AllegriTeams.next().team_id}, {_id:0, official_name:1})
}