Definición
db.aggregate()Ejecuta una canalización de administración/diagnóstico específica que no requiere una colección subyacente. Para obtener información sobre agregaciones en datos de colección, consulte
db.collection.aggregate().Importante
Método mongosh
Esta página documenta una
mongoshMétodo. Esta no es la documentación para comandos de base de datos ni para controladores específicos del lenguaje, como Node.js.Para el comando de base de datos, consulta el comando
aggregate.Para los drivers de API de MongoDB, consulte la documentación del driver de MongoDB específica del lenguaje.
Compatibilidad
Este método está disponible en implementaciones alojadas en los siguientes entornos:
MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube
Nota
Este comando es compatible con todos los clústeres de MongoDB Atlas. Para obtener información sobre el soporte de Atlas para todos los comandos, consulte Comandos no compatibles.
MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB
MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.
Sintaxis
El método db.aggregate() tiene la siguiente sintaxis:
db.aggregate( [ <pipeline> ], { <options> } )
Nota
db.aggregate() puede aceptar las etapas del pipeline como argumentos independientes, en lugar de como elementos de una matriz. Si no se especifica pipeline como una matriz, no se puede especificar el options parámetro.
El pipeline parámetro es una matriz de etapas a ejecutar. La canalización debe comenzar con una etapa compatible que no requiera una colección subyacente, como $currentOp $listLocalSessionso.
El documento options puede contener los siguientes campos:
Campo | Tipo | Descripción | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| booleano | Opcional. Especifica si el método devuelve información sobre el procesamiento de la canalización. Consulte Información de retorno sobre la operación de canalización de agregación para ver un ejemplo. IMPORTANTE: Esta opción no está disponible en transacciones multidocumento. | ||||||||||
| booleano | Opcional. Permite escribir en archivos temporales. Cuando se establece Los mensajes de registro del perfilador y los mensajes de registro de diagnóstico incluyen un indicador | ||||||||||
| Documento | Opcional. Especifica el tamaño del lote inicial del cursor. El valor del | ||||||||||
| non-negative integer | Opcional. Especifica un límite de tiempo en milisegundos para el procesamiento de operaciones en un cursor. Si no se especifica un valor para maxTimeMS, las operaciones no tienen tiempo de espera predefinido. Un valor de MongoDB finaliza las operaciones que exceden su límite de tiempo asignado utilizando el mismo mecanismo que | ||||||||||
| booleano | Opcional. Aplicable solo si se especifican las etapas de agregación Permite que | ||||||||||
| Documento | Opcional. Especifica el nivel de consistencia de lectura. La opción Los posibles niveles de consistencia de lectura son estos:
Para obtener más información sobre los niveles de consistencia de lectura, consulta Nivel de consistencia de lectura. La etapa La etapa | ||||||||||
| Documento | Opcional. Especifica la intercalación a utilizar para la operación. La intercalación permite a los usuarios especificar reglas propias del lenguaje para la comparación de strings, como reglas para el uso de mayúsculas y minúsculas y marcas de acento. La opción de intercalación tiene la siguiente sintaxis: Al especificar la intercalación, el campo Si no se especifica la intercalación, pero la colección tiene una intercalación por defecto (ver Si no se especifica ninguna intercalación para la colección o para las operaciones, MongoDB utiliza la comparación binaria simple usada en versiones anteriores para las comparaciones de strings. No puedes especificar varias intercalaciones para una operación. Por ejemplo, no puedes especificar diferentes intercalaciones por campo, o si realizas una búsqueda con un ordenamiento, no puedes usar una intercalación para la búsqueda y otra para el ordenamiento. | ||||||||||
| string o documento | Opcional. El índice que se utilizará para la agregación. El índice se encuentra en la colección/vista inicial sobre la cual se ejecuta la agregación. Especifique el índice ya sea por su nombre o por el documento de especificación del índice. IMPORTANTE: El | ||||||||||
| string | Opcional. Los usuarios pueden especificar una cadena arbitraria para facilitar el seguimiento de la operación mediante el generador de perfiles de base de datos, currentOp y los registros. | ||||||||||
| Documento | Opcional. Un documento que expresa el nivel de confirmación de escritura a utilizar con la etapa Omita este parámetro para utilizar la preocupación de escritura predeterminada con la etapa |
Ejemplo
Tubería con $currentOp
El siguiente ejemplo ejecuta una canalización con dos etapas. La primera $currentOp ejecuta la operación y la segunda filtra los resultados de dicha operación.
use admin db.aggregate( [ { $currentOp : { allUsers: true, idleConnections: true } }, { $match : { shard: "shard01" } } ] )