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

Eliminar elemento de la matriz en mongodb

Si lo entiendo correctamente, desea eliminar el primer y el último elemento de la matriz si el tamaño de la matriz es mayor que 3. Puede hacerlo mediante la consulta findAndModify. En Mongo Shell estarías usando este comando:

db.collection.findAndModify({
    query: { $where: "this.time.length > 3" },
    update: { $pop: {time: 1}, $pop: {time: -1} },
    new: true
});

Esto encontraría el documento en su colección que coincide con la cláusula $where. El campo $where le permite especificar cualquier método javascript válido. Tenga en cuenta que aplica la actualización solo al primer documento coincidente.

Es posible que también desee consultar los siguientes documentos:

  1. http://www.mongodb.org/display/DOCS/Advanced+Queries#AdvancedQueries-JavascriptExpressionsand%7B%7B%24where%7D%7D para obtener más información sobre la cláusula $where.
  2. http://www.mongodb.org/display/DOCS /Actualizando#Actualizando-%24pop más en $pop.
  3. http://www.mongodb.org/display/DOCS/findAndModify+ Comando para obtener más información sobre findAndModify.