Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
$slice
L'opérateur de $slice mise à jour modifie un tableau en limitant sa taille. Lorsqu'il est utilisé avec l'$pushopérateur, il limite le nombre d'éléments d'un tableau, en ne conservant que le nombre spécifié d'éléments les plus récents ou les plus anciens.
Paramètres
-
field: le champ du tableau à modifier. -
count: Nombre maximum d'éléments à conserver. Les valeurs positives conservent les N premiers éléments, les valeurs négatives conservent les N derniers éléments.
Exemple (MongoDB Shell)
L'exemple suivant montre comment utiliser l'opérateur de $slice mise à jour with $push pour gérer un tableau de taille fixe des scores récents.
Création d'exemples de documents
db.students.insertOne({ _id: 1, name: "Alice", scores: [85, 90, 78] });
Exemple de requête
db.students.updateOne( { _id: 1 }, { $push: { scores: { $each: [92, 88], $slice: -3 } } } )
Sortie
{
"_id" : 1,
"name" : "Alice",
"scores" : [ 78, 92, 88 ]
}
Dans cet exemple, le $slice: -3 modificateur ne conserve que les trois derniers éléments après avoir introduit de nouvelles valeurs dans le tableau.
Exemples de code
Pour afficher un exemple de code relatif $slice à l'utilisation de l'opérateur de mise à jour, sélectionnez l'onglet correspondant à la langue que vous souhaitez utiliser :