$multiply (Multiplicação)

Última atualização: 2026-10-09

$multiply (Multiplicação)

$multiply calcula o produto de vários valores numéricos em expressões de agregação. Os argumentos são passados como um array com pelo menos dois elementos. É comumente usado em $project, $addFields ou $set para calcular subtotais de linha (preço unitário vezes quantidade) ou conversões de moeda. Se qualquer argumento for null ou estiver ausente, toda a expressão retorna null; strings ou datas geram erro. Como $add, é uma expressão simples, não um acumulador — um produto acumulado entre documentos agrupados precisa de $push com $reduce.

CategoriaMatemática
Versão do MongoDB1.0+
Idioma do Exemplomongosh (Shell)

📝 Sintaxe

{ $multiply: [ <expressão1>, <expressão2>, ... ] }

⚙️ Parâmetros

fatorValores numéricos ou expressões que resolvam para eles; pelo menos dois.

Retorno:O produto de todos os argumentos

▶ Exemplo

Execute os comandos abaixo no seu mongosh local (requer um mongod em execução):

// $multiply: calcular subtotal a partir de preço e quantidade
db.orders.aggregate([
  { $project: {
      subtotal: { $multiply: ['$price', '$quantity'] }
  } }
])

Saída:

{ '_id': 1, 'subtotal': 250 }
{ '_id': 2, 'subtotal': 72 }

📌 Notas

Mais casos práticos em breve.

📚 Tutoriais Relacionados

❓ Perguntas Frequentes

QO $multiply pode multiplicar strings ou datas?
ANão — tipos não numéricos geram erro; converta com $toDouble ou $toInt antes.
QQual é a diferença entre $multiply e $sum?
A$sum é um acumulador de $group que soma linhas; $multiply é uma expressão que multiplica os valores de um array.
QComo multiplico valores entre documentos?
AColete os valores com $push dentro de $group e depois multiplique passo a passo com $reduce.
Web-Tutorial.com

Equipe Técnica Web-Tutorial

Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.

100%