Docs Menu

ドキュメントをカウント

このガイドでは、コレクション内のドキュメント数の正確な推定値を取得する方法を学習できます。

コレクション内のドキュメントの数をカウントするには、 count_documents()メソッドを使用します。 特定の検索条件に一致するドキュメントの数をカウントするには、クエリフィルターを含む辞書をcount_documents()メソッドに渡します。

クエリの指定の詳細については、「 クエリの指定 」を参照してください。

コレクション内のすべてのドキュメントの数を返すには、次の例に示すように、空の辞書をcount_documents()メソッドに渡します。

collection.count_documents({})

特定の検索条件に一致するドキュメントの数を返すには、次の例に示すように、 count_documents()メソッドでクエリを指定します。

collection.count_documents({ "author": "Mike" })

count_documents()メソッドは、カウント操作を構成するために使用できるオプションを表す任意のパラメーターを受け入れます。 オプションを指定しない場合、ドライバーはカウント操作をカスタマイズしません。

次の表では、 count_documents()をカスタマイズするために設定できるオプションについて説明しています。

プロパティ
説明

comment

A comment to attach to the operation.

session

ClientSessionのインスタンス。

skip

The number of documents to skip before returning results.

limit

The maximum number of documents to count. Must be a positive integer.

maxTimeMS

The maximum amount of time to allow the operation to run, in milliseconds.

collation

Collationのインスタンス。

hint

Gets or sets the index to scan for documents.

estimated_document_count()メソッドを呼び出すと、コレクション内のドキュメント数の推定値を取得できます。 メソッドはコレクション メタデータに基づいてドキュメントの量を推定します。これは正確なカウントを実行するよりも高速です。

次の例では、 コレクション内のドキュメントの数を見積ります。

collection.estimated_document_count()

estimated_document_count()メソッドは、カウント操作を構成するために使用できるオプションを表す任意のパラメーターを受け入れます。 オプションを指定しない場合、ドライバーはカウント操作をカスタマイズしません。

次の表では、 estimated_document_count()をカスタマイズするために設定できるオプションについて説明しています。

プロパティ
説明

comment

A comment to attach to the operation.

maxTimeMS

The maximum amount of time to allow the operation to run, in milliseconds.

PyMongo はcount()メソッドのサポートを終了しました。 代わりに、 Collectionクラスのcount_documents()メソッドを使用します。

重要

count_documents()メソッドはCollectionクラスに属します。 Cursor.count_documents()を呼び出しようとすると、PyMongo は次のエラーを発生させます。

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'Cursor' object has no attribute 'count'

このガイドで説明したメソッドや型の詳細については、次の API ドキュメントを参照してください。