MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

MongoDb:Unterschied zwischen $push/$addtoset

$addToSet füge das Element nicht dem angegebenen Feld hinzu, wenn es es bereits enthält, andererseits $push fügt das angegebene Objekt dem Feld hinzu, unabhängig davon, ob es existiert oder nicht.

{_id: "docId", items: [1, 2]}
db.items.update({_id:"docId"}, {$addToSet:{items: 2}}); // This won't update the document as it already contains 2
db.items.update({_id:"docId"}, {$push: {items:2}}); // this will update the document. new document {_id: "docId", items:[1,2,2]}