{ members : [ ObjectId("one"), ObjectId("two") ]}
メンバーの中で「1つ」を選択したい。
db.collection.aggregate([{$unwind: '$members'}, {$match: {members: ObjectId("one")}}])
この場合、メンバー 1 を持つすべてのドキュメントを取得します。最初の $match 基準または/および $limit を使用できます。
db.collection.aggregate([{$match: {<expr>}}, {$unwind: '$members'}, {$match: {members: ObjectId("one")}}, {$limit: 1}])
オブジェクトを含む結果配列が得られますが、使い方は簡単です。しかし、これは汚いハックだと思います:)