CRUD: insert, find, update, delete
Harry
· 14 Sep 2026
· 2 views
Advertisement
Create
db.users.insertOne({ name: "Ada", age: 36, city: "Pune" })
db.users.insertMany([
{ name: "Alan", age: 41, city: "Delhi" },
{ name: "Grace", age: 29, city: "Pune" }
])
Each insert returns the generated _id. If you do not supply _id, MongoDB creates an ObjectId for you.
Read
db.users.find() // all documents
db.users.find({ city: "Pune" }) // filter by equality
db.users.findOne({ name: "Ada" }) // a single document
The first argument to find is the query filter – a document describing what to match. An empty filter matches everything.
Update
Updates need a filter and an update operator. The most common is $set:
db.users.updateOne(
{ name: "Ada" },
{ $set: { city: "Mumbai" }, $inc: { age: 1 } }
)
db.users.updateMany({ city: "Pune" }, { $set: { active: true } })
$set changes fields, $inc increments a number. Use updateMany to change every matching document.
Delete
db.users.deleteOne({ name: "Alan" })
db.users.deleteMany({ active: false })
Upsert
Pass { upsert: true } and MongoDB updates the document if it exists or inserts it if it does not – handy for “create or update” logic:
db.users.updateOne(
{ name: "Zoe" },
{ $set: { city: "Chennai" } },
{ upsert: true }
)
Key points
insertOne/insertManycreate documents and return their_id.findtakes a query filter; an empty filter returns everything.- Updates combine a filter with operators like
$setand$inc. upsert: trueupdates if present, otherwise inserts.