Definição
db.aggregate()Executa um pipeline de administração/diagnóstico especificado que não requer uma collection subjacente. Para agregações de dados de collection, consulte
db.collection.aggregate().Importante
Método mongosh
Esta página documenta um método
mongosh. Esta não é a documentação de comandos de banco de dados nem drivers específicos de linguagem, como Node.js.Para o comando do banco de dados, consulte o comando
aggregate.Para drivers de API do MongoDB, consulte a documentação do driver do MongoDB específica da linguagem.
Compatibilidade
Esse método está disponível em implantações hospedadas nos seguintes ambientes:
MongoDB Atlas: o serviço totalmente gerenciado para implantações do MongoDB na nuvem
Observação
Este comando é aceito em todos os clusters do MongoDB Atlas. Para obter informações sobre o suporte do Atlas a todos os comandos, consulte Comandos não suportados.
MongoDB Enterprise: a versão autogerenciada e baseada em assinatura do MongoDB
MongoDB Community: uma versão com código disponível, de uso gratuito e autogerenciada do MongoDB
Sintaxe
O método db.aggregate() tem a seguinte sintaxe:
db.aggregate( [ <pipeline> ], { <options> } )
Observação
db.aggregate() pode aceitar os estágios do pipeline como argumentos separados em vez de elementos em uma array. Se você não especificar pipeline como uma array, não poderá especificar o options parâmetro.
O pipeline parâmetro é uma array de estágios a serem executados. O pipeline deve começar com um estágio compatível que não exija uma collection subjacente, como $currentOp $listLocalSessionsou.
O documento options pode conter os seguintes campos:
Campo | Tipo | Descrição | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| booleano | Opcional. Especifica se o método retorna informações sobre o processamento do pipeline. Consulte Informações de retorno sobre a operação do pipeline de agregação para obter um exemplo. IMPORTANTE: esta opção não está disponível em transações com vários documentos. | ||||||||||
| booleano | Opcional. Permite gravar em arquivos temporários. Quando definido As mensagens de registro do criador de perfil e as mensagens de registro de diagnóstico incluem um indicador | ||||||||||
| documento | |||||||||||
| non-negative integer | Opcional. Especifica um limite de tempo em milésimos de segundo para operações de processamento em um cursor. Se você não especificar um valor para maxTimems, as operações não atingirão o tempo limite. Um valor de O MongoDB encerra as operações que excedem o limite de tempo alocado usando o mesmo mecanismo de | ||||||||||
| booleano | Opcional. Aplicável somente se você especificar as etapas de aggregation do Habilita o para ignorar a validação de esquema durante a | ||||||||||
| documento | Opcional. Especifica a read concern. A opção Os possíveis níveis de read concern são:
Para obter mais informações sobre os read concern, consulte Níveis de read concern. O estágio O estágio | ||||||||||
| documento | Opcional. Especifica o agrupamento a ser usado para a operação. A colocação permite que os usuários especifiquem regras específicas do idioma para comparação de strings, como regras para letras maiúsculas e marcas de acento. A opção de agrupamento tem a seguinte sintaxe: Ao especificar agrupamento, o campo Se o agrupamento não for especificado, mas a coleção tiver um agrupamento padrão (consulte Se nenhum agrupamento for especificado para a coleção ou para as operações, o MongoDB usa a comparação binária simples usada nas versões anteriores para comparações de strings. Você não pode especificar vários agrupamentos para uma operação. Por exemplo, você não pode especificar agrupamentos diferentes por campo ou, se estiver realizando uma busca com uma classificação, não poderá usar um agrupamento para a busca e outro para a classificação. | ||||||||||
| string ou documento | Opcional. O índice a ser usado para a aggregation. O índice está na collection/visualização inicial em relação à qual a aggregation é executada. Especifique o índice pelo nome do índice ou pelo documento de especificação do índice. IMPORTANTE: o | ||||||||||
| string | Opcional. Os usuários podem especificar uma cadeia de caracteres arbitrária para ajudar a rastrear a operação por meio do analisador de banco de dados, currentOp e logs. | ||||||||||
| documento | Opcional. Um documento que expressa a write concern a ser usado com o estágio Omita este parâmetro para usar a preocupação de gravação padrão com o estágio |
Exemplo
Pipeline com $currentOp
O exemplo a seguir executa um pipeline com dois estágios. O primeiro estágio executa a operação $currentOp e o segundo estágio filtra os resultados dessa operação.
use admin db.aggregate( [ { $currentOp : { allUsers: true, idleConnections: true } }, { $match : { shard: "shard01" } } ] )