Làm cách nào tôi có thể nhận được tổng số trong MongoDB?

MongoDB, cơ sở dữ liệu NoSQL phổ biến nhất, chúng ta có thể đếm số lượng tài liệu trong Bộ sưu tập MongoDB bằng cách sử dụng bộ sưu tập MongoDB. hàm đếmDocuments(). Mô-đun mongodb được sử dụng để kết nối cơ sở dữ liệu MongoDB cũng như được sử dụng để thao tác với các bộ sưu tập và cơ sở dữ liệu trong MongoDB.  

Phương thức count() đếm số lượng tài liệu phù hợp với tiêu chí lựa chọn. Nó trả về số lượng tài liệu phù hợp với tiêu chí lựa chọn. Phải mất hai đối số đầu tiên là tiêu chí lựa chọn và đối số còn lại là tùy chọn.  

  • Phương pháp này tương đương với db. thu thập. tìm thấy(). đếm().  
  • Bạn không thể sử dụng phương pháp này trong các giao dịch
  • Một cụm được chia sẻ, nếu bạn sử dụng phương pháp này mà không có biến vị ngữ truy vấn, thì phương pháp này sẽ trả về số lượng không chính xác nếu tài liệu mồ côi tồn tại hoặc nếu quá trình di chuyển đoạn đang diễn ra. Vì vậy, để tránh tình huống như vậy, hãy sử dụng db. thu thập. phương thức tổng hợp()

cú pháp

db. Bộ sưu tập_Tên. đếm(

Tiêu chí lựa chọn,

{

    limit: ,

    skip: ,

    hint: ,

    maxTimeMS : ,

    readConcern: ,

    collation:  

})

Hoặc nếu chúng ta muốn đếm số lượng tài liệu trong bộ sưu tập thì sử dụng cú pháp này

db. Bộ sưu tập_name. đếm()

Thông số

  • Tham số đầu tiên là một tiêu chí lựa chọn. Loại tham số này là một tài liệu
  • Tham số thứ hai là tùy chọn

Thông số tùy chọn

  • giới hạn. Đó là số lượng tài liệu tối đa để đếm
  • nhảy. Đó là số tài liệu cần bỏ qua trước khi đếm
  • dấu. Đó là một tài liệu hoặc trường chỉ định chỉ mục sẽ sử dụng để hỗ trợ bộ lọc. Nó có thể lấy một tài liệu đặc tả chỉ mục hoặc chuỗi tên chỉ mục và nếu bạn chỉ định một chỉ mục không tồn tại thì nó sẽ báo lỗi
  • maxTimeMs. Đó là lượng thời gian tối đa để cho phép truy vấn chạy
  • đọc Quan tâm. Nó được sử dụng khi bạn không muốn sử dụng mối quan tâm đọc mặc định. Để sử dụng mức độ quan tâm đã đọc là "đa số", bạn phải chỉ định điều kiện truy vấn không trống
  • đối chiếu. Nó chỉ định việc sử dụng đối chiếu cho các hoạt động. Nó cho phép người dùng chỉ định các quy tắc dành riêng cho ngôn ngữ để so sánh chuỗi như quy tắc cho chữ cái và dấu trọng âm. Loại tham số này là một tài liệu

Trở về.  

Phương thức này trả về số lượng tài liệu phù hợp với tiêu chí lựa chọn

ví dụ

Trong các ví dụ sau, chúng tôi đang làm việc với

cơ sở dữ liệu. gfg

bộ sưu tập. sinh viên

Tài liệu. Bốn tài liệu chứa tên và tuổi của các sinh viên

Làm cách nào tôi có thể nhận được tổng số trong MongoDB?

  • Đếm số lượng tài liệu trong bộ sưu tập nhất định

Ở đây, ta đếm tổng số tài liệu trong tập sinh thỏa mãn điều kiện đã cho, i. e. , tuổi lớn hơn 18

MongoDB là Cơ sở dữ liệu NoSQL mã nguồn mở nổi tiếng được viết bằng C++. MongoDB là Cơ sở dữ liệu hướng tài liệu sử dụng các tài liệu giống JSON với Lược đồ động để lưu trữ dữ liệu. Điều đó có nghĩa là bạn có thể lưu trữ các bản ghi của mình mà không phải lo lắng về Cấu trúc dữ liệu, số lượng trường hoặc loại trường được sử dụng để lưu trữ giá trị. Tài liệu trong MongoDB tương tự như Đối tượng JSON

Bạn có thể thay đổi cấu trúc của các bản ghi (mà MongoDB gọi là Tài liệu) bằng cách thêm các trường mới hoặc xóa các trường hiện có. Tính năng này của MongoDB cho phép bạn dễ dàng biểu diễn các Mối quan hệ phân cấp, Mảng lưu trữ và các cấu trúc dữ liệu phức tạp khác. Ngày nay, nhiều gã khổng lồ công nghệ, bao gồm Facebook, eBay, Adobe và Google, sử dụng MongoDB để lưu trữ lượng dữ liệu khổng lồ

Các tính năng chính của MongoDB

Làm cách nào tôi có thể nhận được tổng số trong MongoDB?
Nguồn hình ảnh

Phương thức đếm MongoDB được sử dụng để đếm số lượng tài liệu phù hợp với tiêu chí được chỉ định. Phương thức này không thực sự thực hiện thao tác find(), mà trả về một số tài liệu đáp ứng các tiêu chí lựa chọn

A) Cú pháp chung

Cú pháp chung để sử dụng Phương thức đếm MongoDB được đưa ra bên dưới

db.collection.count(query, options)

B) Các tham số liên quan đến Phương thức đếm MongoDB

Các tham số liên quan đến mô tả cú pháp trên Phương thức đếm MongoDB như sau

  • truy vấn. Nó thể hiện các tiêu chí lựa chọn. Loại tham số này là Tài liệu
  • tùy chọn. Nó đại diện cho tham số thứ hai là tùy chọn. Một số tham số tùy chọn được thảo luận bên dưới
    • giới hạn. Nó được sử dụng để áp đặt một ràng buộc về số lượng tài liệu tối đa cần được đếm
    • nhảy. Đây là một tham số tùy chọn chỉ định số lượng tài liệu sẽ được bỏ qua trước khi Phương thức đếm MongoDB bắt đầu đếm thực tế
    • dấu. Đó là một tài liệu hoặc trường chỉ định chỉ mục sẽ được sử dụng để hỗ trợ bộ lọc. Nó có thể chấp nhận Tài liệu Chỉ định Chỉ mục hoặc Chuỗi Tên Chỉ mục và nếu bạn chỉ định một chỉ mục không tồn tại, nó sẽ trả về lỗi
    • đọc Quan tâm. Mối quan tâm đã đọc trong MongoDB cho phép bạn quản lý các thuộc tính nhất quán và cách ly của dữ liệu được đọc từ Bộ bản sao của bạn. Bạn có thể tận dụng tham số readConcern nếu bạn không muốn sử dụng quan tâm đọc mặc định
    • đối chiếu. Đối chiếu cho phép người dùng áp đặt các quy tắc so sánh chuỗi theo ngôn ngữ cụ thể, chẳng hạn như quy tắc viết hoa và dấu trọng âm. Nó có thể được chỉ định cho một bộ sưu tập hoặc chế độ xem, chỉ mục hoặc các hoạt động cụ thể hỗ trợ đối chiếu
    • maxTimeMs. Đây là một tham số tùy chọn chỉ định giới hạn thời gian tích lũy (tính bằng mili giây) để xử lý các thao tác trên con trỏ

C) Ghi chú sử dụng để sử dụng Phương thức đếm MongoDB

Một số điểm quan trọng mà bạn cần lưu ý trước khi sử dụng Phương thức đếm MongoDB như sau

  • Bạn nên tránh sử dụng db. thu thập. phương thức đếm () không có Vị ngữ truy vấn vì nó sẽ trả về kết quả dựa trên siêu dữ liệu của bộ sưu tập, điều này có thể dẫn đến số lượng gần đúng
  • Số lượng kết quả trên một cụm phân mảnh không lọc chính xác các tài liệu mồ côi. Tài liệu mồ côi trong MongoDB là những tài liệu tồn tại trong các khối trên các phân đoạn khác do di chuyển không thành công hoặc dọn dẹp di chuyển không đầy đủ do tắt máy bất thường

D) Ví dụ thực tế

Hãy để chúng tôi hiểu chi tiết về hoạt động của Phương thức đếm MongoDB với sự trợ giúp của một số truy vấn ví dụ. Giả sử bạn có một bộ sưu tập có tên nhân viên bao gồm tuổi và tên của nhân viên

{
“_id”           :        ObjectId(“600fab1788edfrcbcbc34e”),
“name”       :        “John”,
“age”          :        22

}
{
“_id”           :        ObjectId(“600fab1788edfrcbcbc34f”),
“name”       :        “David”,
“age”          :        32

}
{
“_id”           :        ObjectId(“600fab1788edfrcbcbc34g”),
“name”       :        “Leo”,
“age”          :        24

}
{
“_id”           :        ObjectId(“600fab1788edfrcbcbc34h”),
“name”       :        “Theon”,
“age”          :        41

}
{
“_id”           :        ObjectId(“600fab1788edfrcbcbc34i”),
“name”       :        “Larry”,
“age”          :        46

}

Bây giờ, nếu bạn muốn đếm tổng số đối tượng trong bộ sưu tập. Truy vấn sẽ giống như thế này

db.employees.count()

Đầu ra của truy vấn trên sẽ là 5 vì có tổng cộng 5 đối tượng trong Bộ sưu tập nhân viên

Bây giờ, nếu bạn muốn tìm tổng số nhân viên có độ tuổi trên 25. Truy vấn sẽ giống như thế này

db.employees.count({age:{$gt:25}})

Ở đây, $gt có nghĩa là lớn hơn. Đầu ra cho truy vấn trên sẽ là 3 vì có tổng cộng ba nhân viên (David, Larry và Theon) có tuổi lớn hơn 25

Làm cách nào để đếm tài liệu trong một cụm dùng chung?

Như đã thảo luận trong phần trước, nếu các tài liệu mồ côi tồn tại hoặc quá trình di chuyển đoạn đang diễn ra trên một cụm được phân đoạn, Phương thức đếm MongoDB không có Vị ngữ truy vấn có thể tạo ra kết quả không chính xác. Để tránh những tình huống như vậy, bạn có thể sử dụng db. thu thập. phương pháp tổng hợp()

không giống như db. thu thập. phương thức đếm (), phương thức Tổng hợp không sử dụng siêu dữ liệu của bộ sưu tập để trả về số lượng. Bạn có thể tận dụng giai đoạn $count để truy xuất số lượng tài liệu chính xác trong bộ sưu tập được yêu cầu. Ví dụ, hoạt động sau đây đếm các tài liệu trong một bộ sưu tập

db.collection.aggregate( [
   { $count: "myCount" }
])

Sự kết luận

Bài viết này đã giới thiệu cho bạn về MongoDB và các tính năng nổi bật mà nó mang lại. Hơn nữa, nó đã giới thiệu cho bạn phương pháp Đếm MongoDB có thể giúp bạn đếm số lượng tài liệu trong một bộ sưu tập

Khi doanh nghiệp của bạn bắt đầu phát triển, dữ liệu được tạo theo cấp số nhân trên tất cả các ứng dụng SaaS, Cơ sở dữ liệu và các nguồn khác của công ty bạn. Để đáp ứng nhu cầu lưu trữ và xử lý dữ liệu ngày càng tăng này,  bạn cần đầu tư một phần băng thông kỹ thuật của mình để Tích hợp dữ liệu từ tất cả các nguồn, Làm sạch & Chuyển đổi dữ liệu và cuối cùng tải dữ liệu đó vào Kho dữ liệu trên đám mây để có thêm Phân tích kinh doanh

Tất cả những thách thức này có thể được xử lý hiệu quả bằng công cụ ETL dựa trên đám mây như Hevo Data

Ghé thăm trang web của chúng tôi để khám phá Hevo

Hevo Data, Đường ống dữ liệu không mã cung cấp cho bạn giải pháp nhất quán và đáng tin cậy để quản lý truyền dữ liệu giữa nhiều nguồn khác nhau như MongoDB và nhiều Điểm đến mong muốn khác nhau, với một vài cú nhấp chuột

Hevo Data với khả năng tích hợp mạnh mẽ với hơn 100 nguồn (bao gồm hơn 40 nguồn miễn phí) cho phép bạn không chỉ xuất dữ liệu từ các nguồn dữ liệu mong muốn và tải dữ liệu đó đến đích bạn chọn mà còn chuyển đổi và làm phong phú dữ liệu của bạn để phân tích.

Bạn muốn thử Hevo? . Bạn cũng có thể xem giá cạnh tranh nhất sẽ giúp bạn chọn gói phù hợp cho nhu cầu kinh doanh của mình

Tổng số ở đâu trong MongoDB?

Phương thức đếm MongoDB () – db. Bộ sưu tập. count() Phương thức count() đếm số lượng tài liệu phù hợp với tiêu chí lựa chọn.

Có bao nhiêu mục trong MongoDB?

MongoDB hỗ trợ không quá 100 cấp lồng cho các tài liệu BSON. Mỗi đối tượng hoặc mảng thêm một mức.