从数据库返回数组中的对象
我有这样的分贝
{ "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" } ] }