コレクション内の次のレイアウトを考えると...
{
vehicle_id: 1
,// bunch of properties I don't want
,vehicle: {
mfg_year: 1928
,mfg_make: "Ford"
,mfg_model: "Model A"
,mfg_trim: "T-Bucket"
,// bunch of properties I don't want
,images: [
{url:'...',...}
,...
]
}
}
上記のフィールドのみ、および画像の下の最初の結果のみを含む結果を返すにはどうすればよいですか?結果が1つのフラット化されたオブジェクトにあり、画像のみがネストされたオブジェクトであるかどうかは関係ありません。
アグリゲーションフレームワークを調べましたが、探しているものと一致していないようです。結果セットでマップ/リデュースを実行したり、listing_idでグループを実行したりできることはわかっています。グループに頼ったり、リデュースしたりすることなく、より単純なクエリ構造を実現したいと考えています。
現在、集約フレームワークを介してこれが不可能な場合は、ワーキンググループまたはmap-reduceが許容できる答えになります。
編集:最終結果に必要のないプロパティが約50以上あります。$sliceディレクティブでは、必要なフィールドを指定するだけでは不十分なようです。