Du kan använda samma fält i $set
och $unset
stadier av uppdateringsaggregationspipeline.
Du har ett syntaxfel i din fråga. Andra argumentet till .update()
funktion bör vara en array istället för ett objekt. Ta bort de lockiga hängslen runt []
och frågan kommer att fungera.
db.getCollection('name').update(
{"bid": "3860"},
[
{
"$set": {
"tl": {
$add: [
{
$multiply: ["$intField", 24*60*60*1000 ]
},
"$dateField"
]
}
}
},
{ "$unset": 'intField' }
]
);