Grupo MongoDB por vários campos

Grupo MongoDB por vários campos

““O banco de dados MongoDB desempenha um papel importante no armazenamento e manipulação de dados. Para organizar dados, criamos grupos para reunir o mesmo tipo de dados em um só lugar. O agrupamento pode estar em diferentes atributos, seja da variável de contagem ou de qualquer outro recurso. Este tutorial explicará a criação do grupo de acordo com diferentes campos de documentos.

Para a implementação do fenômeno de grupos de acordo com vários campos, precisamos ter alguns dados no banco de dados. Vamos criar um banco de dados primeiro. Isso é feito declarando o nome do banco de dados com a palavra -chave “Use.”Para esta implementação, estamos usando um banco de dados“ demonstração.”

>> Use a demonstração

Depois de terminar a criação do banco de dados, os dados serão inseridos no banco de dados. E para a entrada de dados que usamos para criar "coleções", esses são os contêineres que desempenham um papel importante no armazenamento de dados ilimitados neles. De cada vez, podemos criar muitas coleções em um único banco de dados. Aqui vamos criar um banco de dados com o nome “Info.”

>> dB.createCollection ('info')

A resposta do MongoDB será "OK"; É a confirmação da criação da coleção. Os dados da coleção são inseridos em linha por linha. Então, vamos inserir dados na coleção. Como esses dados serão usados ​​mais adiante em exemplos para criar grupos de acordo com diferentes campos, por isso inserimos muitas linhas. Cada vez que um ID diferente é atribuído a cada linha.

>> dB.informações.insertone ("name": "salvado",
"Idade": 28,
"Género masculino",
"Country": "United States of America")

Da mesma forma, todos os dados serão inseridos. Você pode ver todos os dados inseridos usando o comando find ()

>> dB.informações.encontrar().bonito()

Exemplo 1: Grupo por vários campos/atributos

Quando temos um grande conjunto de dados no banco de dados, mas queremos ter uma visão de alguns deles; em seguida, para esse fim, os grupos de $ são encontrados. Neste exemplo, criaremos um grupo para ver alguns atributos específicos da coleção. O fator de grupo depende da operação agregada. Uma operação agregada é usada, para resumir os dados de acordo com os campos comuns. O sinal de dólar "$" indica a variável. Agora aplique uma consulta na coleção de informações acima.

Um grupo dependendo do ID, será criado. E então, apenas os documentos de idade e gênero são selecionados para serem exibidos. Enquanto todos os dados inteiros, incluindo o nome e o país, são removidos. Este é um filtro usado para limitar a exibição de dados.

>> dB.informações.agregado ([$ Group: _id: Age: "$ AGE", Gênero: "$ gênero"])

Você pode ver que agrupamos cada linha de acordo com o ID, limitando os dados a dois atributos.

Exemplo 2: Agrupe através de vários campos aplicando uma condição

Isso se refere ao agrupamento dos documentos de acordo com uma condição específica. Um grupo será criado em dois atributos e, após a criação do grupo, adicionaremos uma variável de contagem para contar a ocorrência do valor de um documento específico. E também, adicionamos uma ordem de classificação.

Primeiro, vamos exibir os documentos em nossa coleção “Novo.”Criamos uma coleção e adicionamos dados a ele seguindo as mesmas etapas descritas acima. Vamos exibir apenas todos os itens da coleção através da função find ().

A consulta conterá a parte do grupo primeiro. O grupo é criado no ID; Universidade e nível são os dois atributos básicos que queremos ser exibidos. A variável que usamos recebe o valor da coleção e depois a atribui à variável de consulta. Todos os valores e condições não são escritos diretamente no comando.

Após a criação do grupo, a condição é aplicada; é contar e calcular a soma de acordo com os níveis de cada documento. Depois disso, esta resposta será organizada em ordem decrescente. Isso é feito através das funções de classificação (). Esta função contém apenas dois parâmetros; Para o valor ascendente, é 1 e, para descer, é -1.

>> dB.novo.agregado ([$ Group: _id: "University": "$ University", "Level": "$ nível", "LevelCount": "$ sum": 1, "$ Sort" : "LevelCount":-1])

A ordem decrescente mostrará que a maior quantidade do nível será exibida primeiro e depois a menor é exibida seguindo o documento de nível.

Exemplo 3: Grupo de baldes MongoDB por vários campos

Como o nome indica que os grupos são encontrados de acordo com o balde. Isso é feito criando a agregação do balde. A agregação de balde é o processo de categorizar os documentos em grupos. Este grupo age como baldes. Cada documento é dividido dependendo da expressão específica.

Para elaborar esse conceito, daremos uma olhada em uma coleção que criamos e agora aplicaremos os comandos a isso. É criada uma coleção de "sorteio" que armazena as informações básicas sobre uma pessoa. Exibimos todas as 4 linhas inseridas na coleção mais cedo.

Nos dados acima, aplicaremos um comando para criar um balde (grupo) com o ano como um atributo para agrupar os dados. Também criamos limites nos quais o ano de nascimento e a morte são mencionados. As condições aplicadas neste comando incluem a variável de contagem para contar o número de ocorrências. Também usamos um método de concatenação aqui para combinar o primeiro e o segundo nomes como strings. E também, o ano de nascimento será exibido. O ID depende do ano.

Quando calculamos esta consulta, o valor resultante mostrará que duas linhas são agrupadas dependendo dos limites da idade que criamos.

Conclusão

O recurso MongoDB do agrupamento, dependendo de mais de um único campo, é elaborado neste artigo, demonstrando o funcionamento da operação agregada na criação de grupo. Qualquer função de grupo está incompleta sem o recurso agregado. O recurso do grupo é aplicado diretamente através dos diferentes campos para limitar a exposição de dados inteiros. O agrupamento por meio de vários campos também é realizado aplicando uma condição específica. No final, descrevemos a criação de um grupo de balde que contém mais itens como um balde.