Pour votre problème, vous avez besoin du $slice
opérateur de projection au lieu de limit
. Ce dernier limite le nombre de documents retourné à la suite de la requête. Au lieu de cela, le $slice
est conçu pour exactement ce dont vous avez besoin.
Voici un exemple d'utilisation dans votre cas d'utilisation :
> db.getCollection('people').find({id: 2}, {_id: 0, animals: {$slice: [0, 3]}})
{
"id" : 2,
"name" : "Rob",
"animals" : [
"shark",
"snake",
"fish"
]
}