从数据库返回数组中的对象

我有这样的分贝

{ "name": "Tom", "cars": [ { "name": "Shirley", "kind": "Bugatti" }, { "name": "Jessica", "kind": "Maserati" }, ] } 

我有这样的查询

 db.people.findOne({"name: "Tom"}); 

我只想返回"name": "Jessica"的对象"name": "Jessica"

 { "name": "Jessica", "kind": "Maserati" } 

我怎样才能做到这一点?

我试过了

 db.people.findOne({"name": "Tom"}, {"cars.name": 1}); db.people.findOne({"name": "Tom"}, {"cars.name.Jessica": 1}); 

我试图防止返回整个事情,然后sorting一切。

 db.people.findOne({"name": "Tom"}, {"cars": { $elemMatch : { "name": "Jessica"}}}); { "_id" : ObjectId("526453188257d12214ea287d"), "cars" : [ { "name" : "Jessica", "kind" : "Maserati" } ] }