2. Bases de datos NoSQL

2.7. Modificar documentos

Veamos ahora cómo se puede actualizar un documento con la función update().

Vamos a modificar la hebra del gen uc001aaa.3.

db.chr1.update({"name" : "uc001aaa.3"}, { "$set" : { "strand": "-" }});

Y comprobamos el cambio:

db.chr1.find({"name" : "uc001aaa.3"},{"name":1,"strand":1,"_id":0 }).pretty();
Figura 86. Modificar la hebra del gen uc001aaa.3.
Fuente: elaboración propia.

El operador $set modifica el valor de campo si este existe; si no existe el campo, lo incorpora al documento o documentos que coincidan con la selección.

El operador $unset elimina el campo del documento o documentos que coincidan con la selección.

También es posible añadir nuevos elementos a un campo array con el operador $push y eliminar elementos del array con los operadores $pull, $pullAll, $pop.

Los operadores del comando update son los siguientes:

$set, $unset, $inc, $push, $pushAll, $pull, $pullAll, $pop,
$addToSet, $rename, $bit, $ positional operator