Operador MongoDB $ SINC

Operador MongoDB $ SINC

Na programação, tendemos a usar os termos contador, incremento e operadores de decréscimo para adicionar ou subtrair um certo valor para uma variável ou uma contagem de loop. Assim como outra linguagem de programação, o MongoDB surgiu, incluindo o operador “$ inc” para agregar um certo valor ao valor já existente em um campo. O operador “$ inc” não apenas aumenta o valor, mas também pode diminuir o valor. O valor a ser adicionado a um determinado campo pode ser positivo ou negativo de acordo com a situação - valor positivo a serem agregados e negativos para subtrair. Este artigo ajuda você a usar o operador “$ inc” nos comandos do MongoDODB Shell.

Gerar uma coleção em MongoDB

O primeiro passo para o uso do operador "$ INC" em MongoDB é ter alguns dados no banco de dados em que o operador "$ inc" pode ser aplicado. Portanto, devemos ter uma coleção de banco de dados em nosso sistema MongoDB para começar a usá -lo. Para isso, geramos um nome de coleção vazio, "Test", depois de usar a função "createCollection" no console MongoDBB.

Teste> dB.createCollection ("teste")

O reconhecimento "OK: 1" mostra que a coleção vazia "teste" agora é gerada. Para conferir isso, experimente a consulta de função "Find ()", juntamente com o nome de uma coleção como na ilustração a seguir. No momento, mostra que esta coleção não tem registros.

Teste> dB.Teste.encontrar()

Adicione registros à coleção

O segundo passo para o uso do operador "$ INC" em MongoDB é adicionar os registros a uma coleção recém -gerada, "Test". Para isso, lançamos a consulta de função insertMany () que é precedida pelo nome de uma coleção, “teste”. Um total de 3 registros são adicionados a esta coleção. Cada um de seus registros contém 3 campos únicos - título de identificação, idade e 1 campo de formato de documentos. Os campos dentro de um campo como "pontuação" e "posição" residem no campo "Dados".

Teste> dB.Teste.InsertMany ([id: 1, título: "Eden", idade: 22, dados: pontuação: 450, posição: 2,
… Id: 2, título: "bella", idade: 21, dados: pontuação: 498, posição: 1,
… Id: 3, título: "Lia", idade: 22, dados: pontuação: 442, posição: 3])

A saída de imagem anteriormente acoplada mostra que a inserção ocorre com sucesso. Agora, é hora de exibir esses registros adicionados. Para exibi -lo, a consulta de função "encontre" do MongoDB, que é precedida pelo nome da coleção, "teste", nos ajuda como já o usamos no exemplo anterior. Os 3 registros da coleção "Teste" são exibidos como mostrado no seguinte:

Teste> dB.Teste.encontrar()

Exemplo 1: modifique um único campo em um único registro

Começando com este exemplo, usamos o operador “$ inc” para somar um valor em um único campo de qualquer registro. Para fazer isso, você deve experimentar a função "UpdateOne" dentro da instrução "db" seguida pela coleção "teste". Este comando deve começar com a identificação de um número recorde por meio de seu campo específico, o "ID: 1". Depois disso, outro conjunto começa com o uso do operador “$ inc” que é aplicado a um determinado campo único com algum valor numérico. Esse valor numérico é incrementado no valor real do campo que é "idade". A execução desta consulta exibe o reconhecimento.

Teste> dB.Teste.updateOne (id: 1, $ inc: Age: -1)

Vamos buscar o registro "1" da coleção "teste" usando o "ID: 1" como identificação na função "Find" da consulta "db". A saída demonstra que o campo "Idade" é incrementado com sucesso por um valor "-1" para um registro de "1", eu.e. Idade = 22 + (-1) = 21.

Teste> dB.Teste.encontre (id: 1)

Exemplo 2: modifique vários campos em um único registro

Vamos usar o operador "$ inc" na coleção "teste" para incrementar os vários valores de campo, incluindo o campo do tipo documento. Lembre -se de que esses incrementos em vários campos se aplica apenas a um único registro em uma coleção de "teste". Portanto, a função updateOne () é novamente utilizada para atualizar o número de registro "2" da coleção "teste", identificada por "ID: 1". O operador “$ inc” é aplicado ao campo de “idade” de formato único para adicionar seu valor anterior com “-1”. Além disso, os campos "pontuação" e "posição" no campo "Dados" de formato de documentos são incrementados por "580" e "2", respectivamente, conforme a saída usando o produto "Dot".

Teste> dB.Teste.updateOne (id: 2, $ inc: Age: -1, "Dados.Pontuação ": 580", dados.Posição ": 2)

Depois de modificar o registro "2" da coleção "Teste", damos uma boa olhada separadamente através da função "Find" que é usada na instrução "db" mencionando o "id: 2" para um registro ser identificado. O valor de um único registro, "Age", juntamente com os campos de pontuação e posição dentro de um campo de "dados" aninhados, é incrementado com sucesso pelo operador "$ inc".

Teste> dB.Teste.encontre (id: 2)

Exemplo 3: Modifique vários campos em vários registros

Depois de modificar os registros de campo single e múltiplo em um único registro, vamos agora modificar os múltiplos campos de vários registros em uma coleção através do uso da operadora “$ inc”. Para isso, modificamos a consulta de "atualização". Em vez de usar a função "UpdateOne", lançamos a função "Updatemany" para modificar mais de 1 registro de uma coleção de "teste". Esta instrução "db" pode usar o campo "ID" para vários registros ou simplesmente deixar os colchetes encaracolados "" vazios para modificar todos os registros da coleção. O operador "$ inc" modifica os campos de idade, pontuação e posição de todos os 3 registros seguidos para a coleção "teste". A contagem modificada "3" mostra o reconhecimento após a execução desta consulta.

Teste> dB.Teste.updatemany (, $ inc: idade: 1, "dados.Pontuação ": 50", dados.Posição ": -1)

Depois de modificar os múltiplos campos de vários registros após a aplicação do operador "$ INC", é nosso direito dar uma olhada nesses registros modificados através da instrução "DB". Depois de exibir todos os três registros da coleção "Teste", descobrimos que todos os campos especificados anteriormente são incrementados por valores específicos para todos os 3 registros.

Teste> dB.Teste.encontrar()

Conclusão

Este artigo inclui a comparação de operadores de incremento de outras linguagens de programação e o operador "$ INC" do MongoDB em seu parágrafo introdutório. Depois de experimentar certos exemplos de consulta no shell do MongoDB, ilustramos o uso do operador "$ inc" para mais de 1 propósito. As duas primeiras instâncias são sobre o incremento de um único campo e vários campos (incluindo um campo de formato de documento) em um único registro. Embora a última ilustração ajude você a incrementar muitos campos em vários registros de qualquer banco de dados da maneira mais simples possível.