In MongoDB, de $divide
aggregatiepijplijnoperator deelt het ene getal door het andere en geeft het resultaat terug.
$divide
gebruiken , geef de getallen in een array door. De $divide
operator deelt het eerste getal door het tweede getal. Met andere woorden, het eerste getal is het deeltal en het tweede getal is de deler.
De argumenten kunnen elke geldige uitdrukking zijn, zolang ze maar worden omgezet in getallen.
Voorbeeld
Stel dat we een verzameling hebben met de naam data
met het volgende document:
{ "_id" : 1, "a" : 1000, "b" : 2 }
We kunnen de $divide
. gebruiken operator binnen een aggregatiepijplijn om een van die getallen door de andere te delen.
db.data.aggregate(
[
{ $project: {
_id: 0,
a: 1,
b: 1,
result: { $divide: [ "$a", "$b" ] } }
}
]
)
Resultaat:
{ "a" : 1000, "b" : 2, "result" : 500 }
Als we b
. willen delen veld door de a
veld, zouden we ze moeten omwisselen.
Voorbeeld:
db.data.aggregate(
[
{ $project: {
_id: 0,
a: 1,
b: 1,
result: { $divide: [ "$b", "$a" ] } }
}
]
)
Resultaat:
{ "a" : 1000, "b" : 2, "result" : 0.002 }
Negatieve getallen
Stel dat we het volgende document aan onze collectie toevoegen:
{ "_id" : 2, "a" : 1000, "b" : -2 }
Dit is inclusief een negatief getal. Maar dat is geen probleem, want een negatief getal is nog steeds een getal, en we kunnen elk getal zeker delen door een negatief getal.
Voorbeeld:
db.data.aggregate(
[
{ $project: {
_id: 0,
a: 1,
b: 1,
result: { $divide: [ "$a", "$b" ] } }
}
]
)
Resultaat:
{ "a" : 1000, "b" : 2, "result" : 500 } { "a" : 1000, "b" : -2, "result" : -500 }
Hier wordt het omgedraaid, zodat we een negatief getal delen door een positief getal:
db.data.aggregate(
[
{ $project: {
_id: 0,
a: 1,
b: 1,
result: { $divide: [ "$b", "$a" ] } }
}
]
)
Resultaat:
{ "a" : 1000, "b" : 2, "result" : 0.002 } { "a" : 1000, "b" : -2, "result" : -0.002 }
Voeg uw eigen nummer toe
U bent niet noodzakelijkerwijs beperkt tot alleen de cijfers in de documenten. U kunt uw eigen getallen gebruiken als u een veld door een vast bedrag moet delen.
Voorbeeld:
db.data.aggregate(
[
{ $project: {
_id: 0,
result: { $multiply: [ "$a", 5 ] } }
}
]
)
Resultaat:
{ "result" : 5000 } { "result" : 5000 }