A beginner-to-intermediate guide to MongoDB.
MongoDB is a NoSQL document-oriented database. It stores data in flexible, JSON-like documents called BSON.
Download MongoDB Community Edition from the official website.
Verify installation:
mongod --version
Start MongoDB shell:
mongosh
| SQL | MongoDB |
|---|---|
| Database | Database |
| Table | Collection |
| Row | Document |
| Column | Field |
// Create or switch database
use mydatabase
// Create collection
db.createCollection("users")
// Insert one document
db.users.insertOne({
name: "Alice",
age: 25,
email: "alice@example.com"
})
// Insert multiple documents
db.users.insertMany([
{ name: "Bob", age: 30 },
{ name: "Charlie", age: 28 }
])
// Find all documents
db.users.find()
// Find with condition
db.users.find({ age: { $gt: 26 } })
// Pretty output
db.users.find().pretty()
// Update one document
db.users.updateOne(
{ name: "Alice" },
{ $set: { age: 26 } }
)
// Update multiple documents
db.users.updateMany(
{ age: { $gt: 25 } },
{ $set: { status: "active" } }
)
// Delete one document
db.users.deleteOne({ name: "Bob" })
// Delete multiple documents
db.users.deleteMany({ age: { $lt: 25 } })
Indexes improve query performance.
// Create index
db.users.createIndex({ email: 1 })
// View indexes
db.users.getIndexes()
db.users.aggregate([
{ $match: { age: { $gt: 25 } } },
{ $group: { _id: "$status", total: { $sum: 1 } } }
])
{
name: "Order1",
items: [
{ product: "Pen", qty: 2 },
{ product: "Book", qty: 1 }
]
}
{
orderId: 1,
userId: ObjectId("64ad1234...")
}