find 結果にはドキュメント自体のコンテンツのみを含めることができますが、aggregate ドキュメントのコンテンツ(配列の長さなど)から派生した新しい値を投影できます。そのため、aggregateを使用する必要があります このため、ドキュメントを1つだけ取得している場合でも、
Post.aggregate([{$match: {postId: 5}}, {$project: {upvotes: {$size: '$upvotes'}}}])
単一の例外は$meta
$textを射影する射影演算子 クエリ結果のスコア。