查询父文档数组中的子文档

时间:2014-03-02 10:12:58

标签: mongoose

db.animals

{'animal':'monkey',
 'quantity:3
 'id' : 001}
{'animal':'pig',
 'quantity:5
 'id' : 002}
{'animal':'cow',
 'quantity:3
 'id' : 003}

db.people

{'person':'john',
 'have':[001, 003]} // objectId

我怎样才能得到约翰的动物?我希望结果如下:

[{'animal':'monkey',
 'quantity:3
 'id' : 001},
{'animal':'cow',
 'quantity:3
 'id' : 003}]

1 个答案:

答案 0 :(得分:0)

MongoDB中没有连接,因此您必须分两步完成。

在shell中:

var john = db.people.findOne({person: 'john'})
db.animals.find({id: {$in: john.have}})