Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
$slice
El operador de $slice actualización modifica una matriz limitando su tamaño. Cuando se usa con el $push operador, restringe el número de elementos de una matriz y mantiene solo el número especificado de elementos más recientes o más antiguos.
Parámetros
-
field: el campo de matriz que se va a modificar. -
count: Número máximo de elementos que se deben conservar. Los valores positivos mantienen los primeros N elementos, los valores negativos mantienen los N últimos elementos.
Ejemplo (MongoDB Shell)
El siguiente ejemplo demuestra cómo utilizar el operador de $slice actualización con $push para mantener una matriz de partituras recientes de tamaño fijo.
Cree documentos de muestra
db.students.insertOne({ _id: 1, name: "Alice", scores: [85, 90, 78] });
Ejemplo de consulta
db.students.updateOne( { _id: 1 }, { $push: { scores: { $each: [92, 88], $slice: -3 } } } )
Salida
{
"_id" : 1,
"name" : "Alice",
"scores" : [ 78, 92, 88 ]
}
En este ejemplo, el $slice: -3 modificador conserva solo los tres últimos elementos después de introducir nuevos valores en la matriz.
Ejemplos de código
Para ver un ejemplo de código para usar el operador de $slice actualización, elija la pestaña correspondiente al idioma que desee usar: