$count - Amazon DocumentDB

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

$count

Amazon DocumentDB $count 中的彙總階段用於計算傳入階段的文件數量。它通常用作彙總管道中的最後一個階段,以傳回符合先前階段的文件總數。

參數

  • field:要計數的欄位。此參數是選用的,如果未提供,則階段會計算輸入文件的總數。

範例 (MongoDB Shell)

下列範例示範如何使用 $count階段來取得集合中的文件總數。

建立範例文件

db.users.insertMany([ { name: "John", age: 30 }, { name: "Jane", age: 25 }, { name: "Bob", age: 35 }, { name: "Alice", age: 28 } ]);

查詢範例

db.users.aggregate([ { $count: "total" } ]);

輸出

{ "total" : 4 }

此範例會彙總users集合,並使用 $count階段來計算文件的總數。

程式碼範例

若要檢視使用 $count命令的程式碼範例,請選擇您要使用的語言標籤:

Node.js
const { MongoClient } = require('mongodb'); async function countDocuments() { const client = await MongoClient.connect('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false'); const db = client.db('mydb'); const collection = db.collection('users'); const result = await collection.aggregate([ { $count: "total" } ]).toArray(); console.log(result[0].total); await client.close(); } countDocuments();
Python
from pymongo import MongoClient def count_documents(): client = MongoClient('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false') db = client['mydb'] collection = db['users'] result = list(collection.aggregate([ { '$count': "total" } ])) print(result[0]['total']) client.close() count_documents()