Mongodb 3.4 въведе $facet
агрегиране
който обработва множество конвейери за агрегиране в рамките на един етап на един и същ набор от входни документи.
Използване на $facet
и $group
можете да намерите документи с $limit
и може да получи общ брой.
Можете да използвате агрегирането по-долу в mongodb 3.4
db.collection.aggregate([
{ "$facet": {
"totalData": [
{ "$match": { }},
{ "$skip": 10 },
{ "$limit": 10 }
],
"totalCount": [
{ "$group": {
"_id": null,
"count": { "$sum": 1 }
}}
]
}}
])
Дори и вие можете да използвате $count
агрегиране, което е въведено в mongodb 3.6 .
Можете да използвате агрегирането по-долу в mongodb 3.6
db.collection.aggregate([
{ "$facet": {
"totalData": [
{ "$match": { }},
{ "$skip": 10 },
{ "$limit": 10 }
],
"totalCount": [
{ "$count": "count" }
]
}}
])