sql >> Base de Datos >  >> NoSQL >> MongoDB

¿Hay una opción upsert en el comando de inserción mongodb?

Desde upsert se define como una operación que "crea un nuevo documento cuando ningún documento coincide con los criterios de consulta " no hay lugar para upserts en insert dominio. Es una opción para la update dominio. Si ejecuta el comando como se muestra a continuación, funciona como una update , si hay un documento que coincida con query , o como insert con documento descrito por update como argumento .

db.collection.update(query, update, {upsert: true})

MongoDB 3.2 agrega replaceOne :

db.collection.replaceOne(query, replacement, {upsert: true})

que tiene un comportamiento similar, pero su replacement no puede contener operadores de actualización.