Mongodb 3.4 telah memperkenalkan $facet
agregasi
yang memproses beberapa alur agregasi dalam satu tahap pada kumpulan dokumen masukan yang sama.
Menggunakan $facet
dan $group
Anda dapat menemukan dokumen dengan $limit
dan bisa mendapatkan jumlah total.
Anda dapat menggunakan agregasi di bawah ini di mongodb 3.4
db.collection.aggregate([
{ "$facet": {
"totalData": [
{ "$match": { }},
{ "$skip": 10 },
{ "$limit": 10 }
],
"totalCount": [
{ "$group": {
"_id": null,
"count": { "$sum": 1 }
}}
]
}}
])
Bahkan Anda dapat menggunakan $count
agregasi yang telah diperkenalkan di mongodb 3.6 .
Anda dapat menggunakan agregasi di bawah ini di mongodb 3.6
db.collection.aggregate([
{ "$facet": {
"totalData": [
{ "$match": { }},
{ "$skip": 10 },
{ "$limit": 10 }
],
"totalCount": [
{ "$count": "count" }
]
}}
])