As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
$multiply
O $multiply operador no Amazon DocumentDB é usado para multiplicar os valores de dois ou mais campos ou expressões. Esse operador é particularmente útil para realizar operações aritméticas em campos numéricos em documentos. Ele pode ser empregado em vários estágios do pipeline de agregação, como $project e$addFields, para criar novos campos ou modificar os existentes.
Parâmetros
-
expression1: a primeira expressão numérica a ser multiplicada. -
expression2: a segunda expressão numérica a ser multiplicada. -
[expression3, ...]: (opcional) Expressões numéricas adicionais a serem multiplicadas.
Exemplo (MongoDB Shell)
O exemplo a seguir demonstra o uso $multiply para calcular bonus_miles multiplicando base_miles e bonus_rate para clientes que usaram um cartão de crédito para a viagem.
Documentos de amostra
db.miles.insertMany([ { "_id": 1, "customer_name": "Arnav Desai", "member_since": ISODate("1997-03-01T00:00:00Z"), "base_miles": 2500, "bonus_rate": 1.8, "credit_card": true, "trip_cost": 250 }, { "_id": 2, "customer_name": "Jorge Souza", "member_since": ISODate("2004-01-10T00:00:00Z"), "base_miles": 1890, "bonus_rate": 1.4, "credit_card": true, "trip_cost": 189 }, { "_id": 3, "customer_name": "Saanvi Sarkar", "member_since": ISODate("1999-11-22T00:00:00Z"), "base_miles": 3250, "bonus_rate": 1.8, "credit_card": false, "trip_cost": 325 }, { "_id": 4, "customer_name": "Paulo Santos", "member_since": ISODate("2021-06-19T00:00:00Z"), "base_miles": 2980, "bonus_rate": 1.2, "credit_card": true, "trip_cost": 298 }, { "_id": 5, "customer_name": "Wang Xiulan", "member_since": ISODate("1995-12-04T00:00:00Z"), "base_miles": 1350, "bonus_rate": 1.9, "credit_card": false, "trip_cost": 135 } ]);
Exemplo de consulta
db.miles.aggregate([ { $match: { credit_card: true } }, { $project: { customer_name: 1, base_miles: 1, bonus_rate:1, credit_card: 1, total_miles: { $multiply: ["$base_miles", "$bonus_rate"] } } } ]);
Saída
[
{ _id: 1, customer_name: 'Arnav Desai', base_miles: 12500, bonus_rate: 1.8, credit_card: true, total_miles: 22500 },
{ _id: 3, customer_name: 'Saanvi Sarkar',base_miles: 15200, bonus_rate: 1.8, credit_card: true, total_miles: 27360 },
{ _id: 4, customer_name: 'Paulo Santos', base_miles: 3400, bonus_rate: 1.1, credit_card: true, total_miles: 3740 }
]
Exemplos de código
Para ver um exemplo de código para usar o $multiply comando, escolha a guia do idioma que você deseja usar: