$count (件数カウント)

最終更新:2026-10-09

$count (件数カウント)

$count は、パイプラインに残っているドキュメント数を保持した { field: N } の形の単一ドキュメントを返します。$sum: 1 を使う $group の省略記法です。$match の後に置けば、グループ化なしでフィルター後の件数を数えられます。出力は単一ドキュメントで、後続ステージにもそのまま渡ります。

カテゴリコアステージ
MongoDB バージョン1.0+
例の言語mongosh(シェル)

📝 構文

{ $count: "<outputFieldName>" }

⚙️ パラメータ

出力フィールド名件数を受け取るフィールド名。

戻り値:単一の { count: N } ドキュメント(フィールド名は引数で指定)

▶ 例

以下のコマンドをローカルの mongosh で実行してください(mongod が起動済みである必要があります):

// $count: ステータスが A の注文の件数
db.orders.aggregate([
  { $match: { status: 'A' } },
  { $count: 'total' }
])

出力:

// 一致した注文の件数
{ "total": 25 }

📌 注意事項

さらなる実践ケースを近日公開予定。

📚 関連チュートリアル

❓ よくある質問

Q$count と countDocuments の違いは?
AcountDocuments はコレクションを直接数えます。$count はこれまでのパイプラインステージが生成したドキュメントを数えます。
Q$count の後も集計を続けられますか?
Aはい。単一ドキュメントを出力し、後続ステージが処理を続けます。
Q$count の出力フィールド名を変えられますか?
Aはい。引数がフィールド名です。たとえば { $count: 'total' } は { total: N } を出力します。
Web-Tutorial.com

Web-Tutorial 技術チーム

複数の開発者によって共同維持されているプログラミングチュートリアルプラットフォーム。各チュートリアルは専門分野の開発者が執筆・レビューしています。正確で信頼性の高いコンテンツを目指しています — 問題を見つけた場合はお知らせください。

100%