MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Le même champ peut-il être utilisé dans $sert, $unset of update(aggregate)

Vous pouvez utiliser le même champ dans $set et $unset étapes du pipeline d'agrégation des mises à jour.

Vous avez une erreur de syntaxe dans votre requête. Deuxième argument de .update() La fonction doit être un tableau au lieu d'un objet. Supprimez les accolades autour de [] et la requête fonctionnera.

db.getCollection('name').update(
   {"bid": "3860"},
   [
       {
         "$set": {
            "tl": {
               $add: [
                  {
                     $multiply: ["$intField", 24*60*60*1000 ]
                  },
                  "$dateField"
               ]
             }
          }
       },
       { "$unset": 'intField' } 
  ]
);