Key Takeaways About $setOnInsert Operator
- The $setOnInsert operator in MongoDB is used to insert specific values during an upsert operation.
- It does not affect existing documents or update operations that do not result in an insert.
- The operator can also be used with embedded/nested documents using dot notation.
- If an update operation finds a matching document, MongoDB will ignore the $setOnInsert operator and apply the $set operator instead.
- The $setOnInsert operator is useful for setting default values or initializing fields only during the insertion of new documents.
MongoDB – $setOnInsert Operator
MongoDB $setOnInsert Operator is a type of field update operator. The $setOnInsert operator is used in MongoDB update operations with the upsert option. When a new document is inserted, it assigns specified values to the fields in the document. This operator only acts during the insertion of a new document.
This operator can also work with embedded/nested documents. You can use this operator in methods like update(), findAndModify(), etc., according to your requirements.
If the update() or findAndModify() method with upsert: true has found a matching document, then MongoDB will ignore $setOnInsert and apply the $set operator.
Contact Us