Mongoose Query.prototype.clone() API Last Updated : 28 Apr, 2025 Summarize Comments Improve Suggest changes Share Like Article Like Report The Mongoose Query API clone() method is used to copy a mongoose query, and then can be executed anytime later. This method is useful if a query needs to be executed more than once, as a single query can't be executed twice. Syntax: Query.prototype.clone() 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 clone a query of finding one document with the age "20" and execute it. Filename: main.js JavaScript // Importing the module const mongoose = require('mongoose') // Creating the connection mongoose.connect('mongodb://localhost:27017/query-helpers', { 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.findOne({ age: 20 }).clone().exec() 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 clone a query of finding all documents with the age "20" and execute it. Filename: main.js JavaScript // Importing the module const mongoose = require('mongoose') // Creating the connection mongoose.connect('mongodb://localhost:27017/query-helpers', { 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.find({ age: 20 }).clone().exec() 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-clone Comment More infoAdvertise with us Next Article Mongoose Query.prototype.count() API D dishebhbhayana Follow Improve Article Tags : MongoDB Technical Scripter 2022 Mongoose Mongoose-API Similar Reads Mongoose Query() API The Mongoose API Query() method of the Mongoose API is used as a constructor to create a reference of Query. It allows us to create query objects and build query expressions. We do not need to create an object of the Query class in order to interact with the MongoDB collection. We can directly call 3 min read Mongoose Query.prototype.$where() API The Mongoose Query API.prototype.$where() method of the Mongoose API is used on the Query objects. It allows us to put the where condition in the form of JavaScript object or a function in order to pass the expression to the mongodb system. Let us understand the $where() method using an example. Syn 3 min read Mongoose Query.prototype.and() API The Mongoose Query API and() method is used to add additional filters to the current mongoose query instance. Syntax: Query.prototype.and(array) Parameters: It accepts the following parameters as mentioned above and described below: array: It is an array of conditions to concatenate to the current m 3 min read Mongoose Query.prototype.catch() API Mongoose is an essential Object Data Modeling (ODM) library for MongoDB, providing a straightforward way to interact with MongoDB in Node.js environments. One of the most important features in handling MongoDB queries in Mongoose is error handling. The Query.prototype.catch() method is part of Mongo 5 min read Mongoose Query.prototype.clone() API The Mongoose Query API clone() method is used to copy a mongoose query, and then can be executed anytime later. This method is useful if a query needs to be executed more than once, as a single query can't be executed twice. Syntax: Query.prototype.clone() Return type: It returns a Query object as a 3 min read Mongoose Query.prototype.count() API The Mongoose Query API count() method is used to count all the documents from a collection that matches the filter object provided in the arguments. Syntax: Query.prototype.count(filter, callback) Parameters: It accepts the following parameters as mentioned above and described below: filter: It is a 3 min read Mongoose Query.prototype.countDocuments() API The Mongoose Query API countDocuments() method is used to count all the documents from a collection that matches the filter object provided in the arguments. Syntax: Query.prototype.countDocuments(filter, options, callback) Parameters: It accepts the following parameters as mentioned above and descr 3 min read Mongoose Query.prototype.deleteMany() API 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 3 min read Mongoose Query.prototype.deleteOne() API The Mongoose Query API deleteOne() method is used to find and delete a single document that is determined from the filter parameter, from a collection, using the MongoDB query system. Syntax: Query.prototype.deleteOne(conditions, options, callback) Parameters: It accepts the following parameters as 3 min read Mongoose Query.prototype.distinct() API The Mongoose Query API distinct() method is used to find the distinct values for a particular field in a collection and return the response as an array. Syntax: Query.prototype.distinct(field, filter, callback) Parameters: It accepted the following parameters as mentioned above and described below: 3 min read Like