バージョン 1.4 で追加。
定義
パラメーター
$filter: array|object- カウントするドキュメントを指定するフィルター条件。
$options: 配列必要なオプションを指定する配列。
名前タイプ説明collation
array|object
照合順序を指定すると、大文字や小文字、アクセント記号など、string を比較するための言語独自のルールを指定できます。 照合を指定する場合、
localeフィールドは必須です。その他の照合フィールドはすべてオプションです。 フィールドの説明については、 「照合ドキュメント」 を参照してください。照合が指定されていないが、コレクションにデフォルトの照合がある場合、操作はコレクションに指定された照合を使用します。 コレクションにも操作にも照合が指定されていない場合、MongoDB では以前のバージョンで使用されていた単純なバイナリ比較によって string が比較されます。
comment
混合
データベースプロファイラ、 currentOp出力、およびログから操作を追跡するのに役立つ任意のコメントを指定できるようにします。
コメントには、 MongoDB 4.4 以降の有効なBSONタイプであればどれでもかまいません。以前のサーバーバージョンでは string 値のみがサポートされていました。
hint
string|array|object
使用するインデックス。 インデックス名を string またはインデックス キー パターンをドキュメントとして指定します。 指定すると、クエリ システムはヒント指定したインデックスを使用するプランのみを考慮します。
limit
integer
返される一致するドキュメントの最大数。
maxTimeMS
integer
カーソルに対する情報処理操作の累積時間制限(ミリ秒単位)。 MongoDB は、次の割り込みポイントが最も近い時点で操作を中止します。
ReadConcern
操作に使用する読み取り保証。 デフォルトはコレクションの読み取り保証 (read concern) です。
トランザクションの一部である個々の操作に対して読み取り保証 (read concern)を指定することはできません。代わりに、トランザクションを開始するときに
readConcernオプションを設定します。readPreference
操作に使用する読み取り設定。 コレクションの読み込み設定(read preference)がデフォルトで設定されます。
セッション
操作に関連付けるクライアント セッション。
スキップ
integer
結果を返す前にスキップするマッチするドキュメントの数。
Return Values
フィルター条件に一致するドキュメントの数。
エラーと例外
MongoDB\Exception\UnexpectedValueException サーバーからのコマンド応答が不正な形式であった場合、。
MongoDB\Exception\UnsupportedExceptionオプションが使用され、選択したサーバーでサポートされていない場合(例: collation 、 readConcern 、 writeConcern )。
MongoDB\Exception\InvalidArgumentException は、パラメータまたはオプションの解析に関連するエラーの場合は です。
MongoDB$Driver\Exception\RuntimeException は、拡張レベルの他のエラーの場合(例:)。
動作
内部的には、このメソッドは結果を取得するために$group集計パイプライン演算子を使用します。 filterパラメーターが指定されている場合、これは$matchパイプライン演算子に変換されます。 任意の$skipステージと$limitステージは、オプションに存在する場合、 $matchとgroupの間に追加されます。
注意
このメソッドはサーバー側のドキュメントをカウントします。 フィルタなしのドキュメントのおおよその合計数を取得するには、 MongoDB\Collection::estimatedDocumentCount()メソッドを使用できます。 この方法では、コレクション メタデータに基づいてドキュメント数を推定するため、パフォーマンスの精度が低下します。
このメソッドでは集計パイプラインを使用するため、 MongoDB\Collection::count() filter内で受け入れられる一部のクエリ演算子は使用できません。 これらの制限された演算子に対する次の代替手段を検討してください。
クエリ条件を評価する際、 MongoDB はBSON types の独自の比較ルールに従ってタイプと値を比較します。これは PHP の比較および型調整ルールとは異なります。特別な BSON type を照合する場合、BSONクラス は拡張機能(例:)。( ObjectId を一致させるためにMongoDB$ BSON$ObjectId を使用)