Eliminar Node.js MongoDB


Eliminar documento

Para borrar un registro, o documento como se le llama en MongoDB, usamos el deleteOne()método.

El primer parámetro del deleteOne()método es un objeto de consulta que define qué documento eliminar.

Nota: Si la consulta encuentra más de un documento, solo se elimina la primera aparición.

Ejemplo

Elimine el documento con la dirección "Montaña 21":

var MongoClient = require('mongodb').MongoClient;
var url = "mongodb://localhost:27017/";

MongoClient.connect(url, function(err, db) {
  if (err) throw err;
  var dbo = db.db("mydb");
  var myquery = { address: 'Mountain 21' };
  dbo.collection("customers").deleteOne(myquery, function(err, obj) {
    if (err) throw err;
    console.log("1 document deleted");
    db.close();
  });
});

Guarde el código anterior en un archivo llamado "demo_delete.js" y ejecute el archivo:

Ejecute "demo_delete.js"

C:\Users\Your Name>node demo_delete.js

Lo que te dará este resultado:

1 document deleted


Eliminar muchos

Para eliminar más de un documento, utilice el deleteMany()método.

El primer parámetro del deleteMany()método es un objeto de consulta que define qué documentos eliminar.

Ejemplo

Elimine todos los documentos donde la dirección comience con la letra "O":

var MongoClient = require('mongodb').MongoClient;
var url = "mongodb://localhost:27017/";

MongoClient.connect(url, function(err, db) {
  if (err) throw err;
  var dbo = db.db("mydb");
  var myquery = { address: /^O/ };
  dbo.collection("customers").deleteMany(myquery, function(err, obj) {
    if (err) throw err;
    console.log(obj.result.n + " document(s) deleted");
    db.close();
  });
});

Guarde el código anterior en un archivo llamado "demo_delete_many.js" y ejecute el archivo:

Ejecute "demo_delete_many.js"

C:\Users\Your Name>node demo_delete_many.js

Lo que te dará este resultado:

2 document(s) deleted

El objeto de resultado

El deleteMany()método devuelve un objeto que contiene información sobre cómo la ejecución afectó a la base de datos.

No es importante comprender la mayor parte de la información, pero un objeto dentro del objeto se llama "resultado", que nos dice si la ejecución fue correcta y cuántos documentos se vieron afectados.

El objeto de resultado se ve así:

{ n: 2, ok: 1 }

Puede usar este objeto para devolver la cantidad de documentos eliminados:

Ejemplo

Devuelve el número de documentos eliminados:

console.log(obj.result.n);

Lo que producirá este resultado:

2