我有一个像下面提到的mongoDB记录 -
{
"d": {
"education": [
{
"school": { "name": "one", "id": "1" }
},
{
"school": { "name" : "two", "id" : "2" }
}
]
}
}
现在我正在运行一个mongo查询来获取我记录中的所有学校名称,就像这样 -
db.test.find({},{"d.education.0.school.name":"1"})
但结果不是我想要的,它是空的 -
{
"_id": ObjectId("5722385b964f6cb39d49f875"),
"d" : { "education" : [ { }, { } ] }
}
我希望得到这样的结果 -
{
"_id": ObjectId("5087c96338aeb0538a832574"),
"d": {
"education": [
{
"school": { "name" : "one" }
}
]
}
}
从学校阵列的第一个记录开始的学校名称。请帮忙!
答案 0 :(得分:0)
试试这个:
db.test.aggregate([{"$project":
{"d.education.school.name":true}},
{$unwind:"$d.education.school"},
{"$limit":1}])