Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
See how MongoDB 9.0 delivers up to 2x higher throughput.
MongoDB Branding Shape
Register now >
Docs Menu

$firstN (expresión)

$firstN

Devuelve el número especificado de elementos desde el principio de un array.

Nota

Desambiguación

Esta página describe $firstN cuando se usa como una expresión, que devuelve el número especificado de elementos desde el principio de una matriz.

También puedes usar $firstN en estos otros contextos:

{ $firstN: { input: <expression>, n: <expression> } }
Campo
Tipo
Descripción

input

expresión

El array del que se devolverán los primeros n elementos.

n

expresión

El número de elementos que devuelve $firstN. Debe ser un número entero positivo.

  • $firstN devuelve elementos en el mismo orden en que aparecen en el arreglo de entrada.

  • $firstN no filtra los valores null en el array de entrada.

  • No puedes especificar un valor de n menor que 1.

  • Si el n especificado es mayor o igual que el número de elementos en el array input, $firstN devuelve todo el array input.

  • Si input resulta en un valor que no es un arreglo, la operación de agregación genera errores.

Los ejemplos de esta página utilizan datos del conjunto de datos sample_mflix. Para obtener más información sobre cómo cargar este conjunto de datos en su implementación autogestionada de MongoDB, consulte Cargar el conjunto de datos de ejemplo. Si realizó alguna modificación en las bases de datos de ejemplo, es posible que deba eliminarlas y volver a crearlas para ejecutar los ejemplos de esta página.

El siguiente ejemplo utiliza el operador $firstN para devolver los tres primeros miembros del reparto de cada película. Los miembros del reparto se devuelven en el nuevo campo firstThreeCast creado por $addFields.

db.movies.aggregate( [
{
$match: {
title: { $in: [ "The Godfather", "Spirited Away", "The Dark Knight" ] }
}
},
{
$addFields: {
firstThreeCast: { $firstN: { input: "$cast", n: 3 } }
}
},
{
$project: {
_id: 0,
title: 1,
cast: 1,
firstThreeCast: 1
}
},
{
$sort: { title: 1 }
}
] )

La tubería precedente:

  • Utiliza $match para filtrar tres películas específicas.

  • Utiliza $addFields con $firstN para crear un nuevo campo firstThreeCast que contiene los tres primeros elementos del array cast con n: 3.

  • Utiliza $project para incluir solo los campos title, cast y firstThreeCast en la salida.

  • Utiliza $sort para ordenar los resultados por título.