リストの完全な内容を取得せずに、各ドキュメントの配列の長さを取得するmongoクエリを実行しようとしています。理想的には、これは次の線に沿った投影オプションになります。
db.log.find({},{entries:{$length: 1}})
ただし、これはサポートされていません。これは、新しい集計フレームワークを使用してエレガントな方法で可能でしょうか? 私が思いついたのはこれです:
db.log.find({},{"entries.length": 1})
次のような結果が返されます。
{ "_id" : ObjectId("50d2fb07e64cfa55431de693"), "entries" : [ { }, { }, { }, { }, { }, { }, { }, { }, { }, { }, { }, { }, { }, { }, { }, { }, { }, { } ] }
これは醜いですが、完全なコンテンツを取得するネットワークの重みなしでこのリストの長さを数えることができるので、基本的には私のニーズに応えます。しかし、なぜこれが機能するのかわかりません。このクエリは実際に何をしているのでしょうか?