Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MongoDB

Đếm số dòng (tài liệu) trong collection MongoDB

Đếm số tài liệu trong collection dùng phương thức count() (hoặc countDocuments() mới hơn). Tạo collection:

> db.demo664.insertOne({_id:1,ClientName:"Chris"});
{ "acknowledged" : true, "insertedId" : 1 }
> db.demo664.insertOne({_id:2,ClientName:"Bob"});
{ "acknowledged" : true, "insertedId" : 2 }
> db.demo664.insertOne({_id:3,ClientName:"Sam"});
{ "acknowledged" : true, "insertedId" : 3 }
> db.demo664.insertOne({_id:4,ClientName:"David"});
{ "acknowledged" : true, "insertedId" : 4 }

Hiển thị dữ liệu:

> db.demo664.find();

Kết quả (4 tài liệu):

Đếm số dòng và in ra:

> var numberOfRows = db.demo664.count();
> print("Number Of Rows=" + numberOfRows);

Kết quả:

Number Of Rows=4

Phương thức đếm (MongoDB 4.0+):

  • db.collection.countDocuments({}) - **khuyến nghị**, chính xác, hỗ trợ filter
  • db.collection.estimatedDocumentCount() - nhanh, dùng metadata, không hỗ trợ filter
  • db.collection.count({}) - **deprecated**, không chính xác với sharded cluster

Đếm có điều kiện: db.demo664.countDocuments({ClientName: "Chris"}) → 1.

Aggregation alternative: db.demo664.aggregate([{$count: "total"}]) trả về { "total": 4 }.