📘 Premium Read: Access my best content on Medium member-only articles — deep dives into Java, Spring Boot, Microservices, backend architecture, interview preparation, career advice, and industry-standard best practices.
🎓 Top 15 Udemy Courses (80-90% Discount): My Udemy Courses - Ramesh Fadatare — All my Udemy courses are real-time and project oriented courses.
▶️ Subscribe to My YouTube Channel (176K+ subscribers): Java Guides on YouTube
▶️ For AI, ChatGPT, Web, Tech, and Generative AI, subscribe to another channel: Ramesh Fadatare on YouTube
In this post, we will learn how to delete a document using MongoDB.
Delete Methods
MongoDB provides the following methods to delete documents of a collection:
- db.collection.deleteOne() - Delete at most a single document that match a specified filter even though multiple documents may match the specified filter.
- db.collection.deleteMany() - Delete all documents that match a specified filter.
- db.collection.remove() - Delete a single document or all documents that match a specified filter.
The examples on this page use the posts collection. To populate the posts collection, run the following:
db.posts.insertMany([ { title: 'MongoDB Overview', description: 'MongoDB is no sql database', by: 'Java Guides', url: 'https://javaguides.net', tags: ['mongodb', 'database', 'NoSQL'], likes: 100 }, { title: 'NoSQL Database', description: "NoSQL database doesn't have tables", by: 'Java Guides', url: 'https://javaguides.net', tags: ['mongodb', 'database', 'NoSQL'], likes: 20, comments: [ { user:'user1', message: 'My first comment', dateCreated: new Date(2013,11,10,2,35), like: 0 } ] } ]); { "acknowledged" : true, "insertedIds" : [ ObjectId("5e18246f7695f4d696a05985"), ObjectId("5e18246f7695f4d696a05986") ] }
Delete All Documents
To delete all documents from a collection, pass an empty filter document {} to the db.collection.deleteMany() method.
The following example deletes all documents from the inventory collection:
db.posts.deleteMany({})
The method returns a document with the status of the operation.
Delete Only One Document that Matches a Condition
To delete at most a single document that matches a specified filter (even though multiple documents may match the specified filter) use the db.collection.deleteOne() method.
The following example deletes the first document where the title is "MongoDB Overview":
db.posts.deleteOne( { title: "MongoDB Overview" } )
Delete All Documents that Match a Condition
You can specify criteria, or filters, that identify the documents to delete. The filters use the same syntax as read operations.
To specify equality conditions, use : expressions in the query filter document:
{ <field1>: <value1>, ... }
A query filter document can use the query operators to specify conditions in the following form:
{ <field1>: { <operator1>: <value1> }, ... }
To delete all documents that match deletion criteria, pass a filter parameter to the deleteMany() method.
The following example removes all documents from the inventory collection where the status field equals "A":
db.inventory.deleteMany({ by : "Java Guides" })
The method returns a document with the status of the operation.
Summary
The below diagram shows the summary of all the commands used in this post:
Comments
Post a Comment
Leave Comment