サブドキュメント配列から特定のフィールドを取得しようとしています
親ドキュメントにはどのフィールドも含めません
サンプル文書はこちら
{
"_id" : ObjectId("5409dd36b71997726532012d"),
"hierarchies" : [
{
"rank" : 1,
"_id" : ObjectId("5409df85b719977265320137"),
"name" : "CTO",
"userId" : [
ObjectId("53a47a639c52c9d83a2d71db")
]
}
]
}
userId が userId 配列にある場合、階層のランクを返したいと思います
これが私のクエリでこれまでに持っているものです
collectionName.find({{hierarchies:
{$elemMatch : {userId: ObjectId("53a47a639c52c9d83a2d71db")}}}
, "hierarchies.$.rank", function(err,data){}
これまでのところ、必要な階層配列内のオブジェクト全体を返しますが、オブジェクトのランク プロパティのみに制限したいと考えています。