MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Nhận tổng số tài liệu với MongoDB khi sử dụng giới hạn

Mongodb 3.4 đã giới thiệu $facet tổng hợp

xử lý nhiều đường ống tổng hợp trong một giai đoạn trên cùng một bộ tài liệu đầu vào.

Sử dụng $facet $group bạn có thể tìm tài liệu bằng $limit và có thể nhận được tổng số.

Bạn có thể sử dụng tổng hợp bên dưới trong mongodb 3.4

db.collection.aggregate([
  { "$facet": {
    "totalData": [
      { "$match": { }},
      { "$skip": 10 },
      { "$limit": 10 }
    ],
    "totalCount": [
      { "$group": {
        "_id": null,
        "count": { "$sum": 1 }
      }}
    ]
  }}
])

Thậm chí bạn có thể sử dụng $count tổng hợp đã được giới thiệu trong mongodb 3.6 .

Bạn có thể sử dụng tổng hợp bên dưới trong mongodb 3.6

db.collection.aggregate([
  { "$facet": {
    "totalData": [
      { "$match": { }},
      { "$skip": 10 },
      { "$limit": 10 }
    ],
    "totalCount": [
      { "$count": "count" }
    ]
  }}
])


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Nhận danh sách các chỉ mục trong MongoDB

  2. MongoDB $ tan

  3. MongoDB $ rtrim

  4. Tương đương với xóa theo tầng được đề xuất trong MongoDB cho mối quan hệ N:M là gì?

  5. Cách chuyển đổi chuỗi thành objectId trong LocalField cho $ lookup Mongodb