Open In App

Mongoose Query.prototype.deleteMany() API

Improve
Improve
Like Article
Like
Save
Share
Report

The Mongoose Query API deleteMany() method is used to find and delete documents that are determined from the filter parameter, from a collection, using the MongoDB query system.

Syntax:

Query.prototype.deleteMany(filter, options, callback)

Parameters: It accepts the following parameters as mentioned above and described below:

  • filter: It is a mongoose object which identifies the existing documents to delete.
  • options: It is an optional mongoose object which is derived from Query.prototype.setOptions().
  • callback: It is a callback function that accepts 2 parameters: error and document.

Return type: It returns a Query object as a response.

Creating node application And Installing Mongoose:

Step 1: Create a node application using the following command:

mkdir folder_name
cd folder_name
npm init -y
touch main.js

Step 2: After completing the Node.js application, Install the required module using the following command:

npm install mongoose

Example 1: In this example, we will use this method to find and delete existing documents that have the name “Luffy”.

Javascript




const mongoose = require('mongoose')
 
// Database connection
    {
        dbName: 'event_db',
        useNewUrlParser: true,
        useUnifiedTopology: true
    }, err => err ? console.log(err)
        : console.log('Connected to database'));
 
const personSchema = new mongoose.Schema({
    name: {
        type: String,
    },
    age: {
        type: Number,
    }
});
 
const personsArray = [
    {
        name: 'Luffy',
        age: 20
    },
    {
        name: 'Nami',
        age: 20,
    },
    {
        name: 'Zoro',
        age: 35
    }
]
 
const Person = mongoose.model('Person', personSchema);
 
(async () => {
    await Person.insertMany(personsArray);
    const res = await Person.deleteMany({ name: 'Luffy' });
    console.log({ res });
})()


Step to Run Application: Run the application using the following command from the root directory of the project:

node main.js

Output:

 

GUI Representation of the  Database using MongoDB Compass:

 

Example 2: In this example, we will use this method to find and delete documents that have an age equal to “20”.

Javascript




const mongoose = require('mongoose')
 
// Database connection
    {
        dbName: 'event_db',
        useNewUrlParser: true,
        useUnifiedTopology: true
    }, err => err ? console.log(err)
        : console.log('Connected to database'));
 
const personSchema = new mongoose.Schema({
    name: {
        type: String,
    },
    age: {
        type: Number,
    }
});
 
const personsArray = [
    {
        name: 'Luffy',
        age: 20
    },
    {
        name: 'Nami',
        age: 20,
    },
    {
        name: 'Zoro',
        age: 35
    }
]
 
const Person = mongoose.model('Person', personSchema);
 
(async () => {
    await Person.insertMany(personsArray);
    const res = await Person.deleteMany({ age: 20 });
    console.log({ res });
})()


Step to Run Application: Run the application using the following command from the root directory of the project:

node main.js

Output:

 

GUI Representation of the  Database using MongoDB Compass:

 

Reference: https://mongoosejs.com/docs/api/query.html#query_Query-deleteMany



Last Updated : 17 Feb, 2023
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads