Eliminar duplicados en MongoDB

MD Aminul Islam 20 junio 2023
Eliminar duplicados en MongoDB

Es posible que esté familiarizado con las entradas duplicadas si es administrador de una base de datos. Las entradas duplicadas son un problema común en la gestión de bases de datos.

En este artículo, vamos a ver cómo podemos eliminar entradas duplicadas en MongoDB, y también vamos a ver un ejemplo con una explicación adecuada para facilitar el tema.

Eliminar documentos duplicados de la colección en MongoDB

Necesitamos dividir la tarea en dos partes para eliminar las entradas duplicadas de la base de datos. En primer lugar, debemos ordenar los documentos de una colección en función de criterios específicos y, después de eso, debemos definir una función para cada documento utilizando el método forEach().

Dentro de la función, necesitamos usar un método llamado remove(), que eliminará el documento duplicado. Ahora echemos un vistazo a un ejemplo para que quede claro.

En nuestro ejemplo a continuación, demostraremos cómo podemos eliminar entradas duplicadas de nuestras colecciones. Ahora, antes de comenzar, creemos algunos documentos duplicados intencionalmente como el siguiente:

{
  "sl": 1,
  "Name": "Alex"
}
{
  "sl": 1,
  "Name": "Alex"
}

Ahora vamos a ejecutar el siguiente comando en la consola de MongoDB:

db.mycolletion.find({}, {
  "sl": 1
}).sort({
  _id: 1
}).forEach(function (record) {
  db.mycolletion.remove({
    _id: {
      $gt: record._id
    },
    "sl": record.sl
  });
});

Ya describimos el mecanismo de trabajo del comando anterior en nuestra parte de introducción. Después de ejecutar el comando con éxito, obtendrá el siguiente resultado en la ventana de su consola.

{
  "sl": 1,
  "Name": "Alex"
}

Recuerde, debe cambiar a su base de datos si no está en su base de datos objetivo. Para hacer esto, use el siguiente comando:

use Your_DB

Tenga en cuenta que los comandos que se muestran en este artículo son para la base de datos de MongoDB y el comando debe ejecutarse en la consola de MongoDB.

MD Aminul Islam avatar MD Aminul Islam avatar

Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.

LinkedIn

Artículo relacionado - MongoDB Collection