Operador MongoDB $ MUL

Operador MongoDB $ MUL
Ao trabalhar com bancos de dados, você geralmente se depara com instâncias em que precisa executar operações aritméticas em um determinado conjunto de registros. O MongoDB nos fornece um conjunto de operadores aritméticos para realizar essas operações.

Nesta postagem, discutiremos como multiplicar os valores de um determinado campo com um número específico usando o operador $ MUL.

Operador MongoDB $ MUL

O $ MU ou Operador de Multiplicação nos permite multiplicar o valor de um determinado campo com um valor numérico específico.

A sintaxe do operador é como mostrado:

$ mul: : ,…

É bom garantir que o campo alvo tenha valor numérico. Caso contrário, o operador falha se encontrar um valor não numérico.

Você também pode usar a notação de pontos para acessar um campo localizado em um documento incorporado ou uma matriz.

Se o campo especificado não existir no documento de destino, o operador cria o arquivo definido e define o valor para um zero com tipo semelhante ao número multiplicador.

Também é bom lembrar as regras de conversão que podem se aplicar ao executar multiplicações em vários tipos. A tabela a seguir mostra as conversões de tipo suportadas:

Vejamos um exemplo do mundo real sobre como usar o operador $ MUL.

Exemplo de coleção e documentos

Suponha que tenhamos uma coleção que contenha uma informação do produto, como mostrado:

Teste> dB.CreateCollection ("Produtos")
ok: 1
Teste> dB.produtos.InsertMany ([
… _Id: 1, Product_name: "Product_1", Preço: 100, Qty: 78,
… _Id: 2, Product_name: "Product_2", Preço: 4500, Qty: 344,
… _Id: 3, Product_name: "Product_3", Preço: 45, Qty: 200
…]);
reconhecido: verdadeiro, inserdIds: '0': 1, '1': 2, '2': 3

Exemplo:

O exemplo a seguir mostra uma operação simples sobre como usar o operador $ MUL:

Teste> dB.produtos.updateOne (_id: 1, $ MUL: Price: 2);

A consulta anterior deve multiplicar o preço por 2 e no documento com o ID de 1.

Saída:

reconhecido: verdadeiro,
inserdId: nulo,
MatchedCount: 1,
ModifiedCount: 1,
UPSERTEDCOUNT: 0

Podemos encontrar os documentos correspondentes da seguinte forma:

Teste> dB.produtos.encontrar();

Documentos resultantes:

[[
_id: 1, Product_name: 'Product_1', Preço: 200, Qty: 78,
_id: 2, product_name: 'product_2', preço: 4500, Qty: 344,
_id: 3, Product_name: 'Product_3', Preço: 45, Qty: 200
]

Podemos ver que o documento atualiza o primeiro documento para ter um preço de 200.

Se você deseja atualizar mais de um campo, pode usar a solicitação, conforme mostrado no seguinte:

Teste> dB.produtos.updateOne (_id: 1, $ MUL: Price: 2, Qty: 100);

Nesse caso, a consulta atualiza o preço e a quantidade do primeiro documento, como mostrado no seguinte resultado:

Teste> dB.produtos.encontre (_ id: 1);

Resultado:

[_id: 1, Product_name: 'Product_1', Preço: 400, Qty: 7800]

Conclusão

Neste guia, você aprendeu a usar o operador de multiplicação no shell de MongoDBB. Verifique os documentos para obter mais informações.