mongosh --version
=> Check monosh
Version
mongosh "YOUR_CONNECTION_STRING" --username YOUR_USER_NAME
=> Start the Mongo Shell
db;
=> Show Current Database
show dbs
=> Show All Databases
use blog
=> Create Or Switch Database
db.dropDatabase();
=> Drop Database
db.createCollection("posts");
=> Create Collection
show collections
=> Show Collections
- Insert Document
db.posts.insertOne({
title: "Post 1",
body: "Body of post.",
category: "News",
likes: 1,
tags: ["news", "events"],
date: Date(),
});
- Insert Multiple Documents
db.posts.insertMany([
{
title: "Post 2",
body: "Body of post.",
category: "Event",
likes: 2,
tags: ["news", "events"],
date: Date(),
},
{
title: "Post 3",
body: "Body of post.",
category: "Tech",
likes: 3,
tags: ["news", "events"],
date: Date(),
},
]);
db.posts.find();
=> Find All Documents
- Find Documents with Query
db.posts.find({
category: "News",
});
- Count Documents
db.posts.find().count();
db.posts
.find({
category: "news",
})
.count();
db.posts.find().limit(2);
=> Limit Documents
- Chaining
db.posts.find().limit(2).sort({
title: 1,
});
- Find One Document
db.posts.findOne({
likes: {
$gt: 3,
},
});
- Update Document
db.posts.updateOne(
{
title: "Post 1",
},
{
$set: {
category: "Tech",
},
}
);
- Update Document or Insert if not Found
db.posts.updateOne(
{
title: "Post 6",
},
{
$set: {
title: "Post 6",
body: "Body of post.",
category: "News",
},
},
{
upsert: true,
}
);
- Increment Field (
$inc
) db.posts.updateOne(
{
title: "Post 1",
},
{
$inc: {
likes: 2,
},
}
);
- Update Multiple Documents
db.posts.updateMany(
{},
{
$inc: {
likes: 1,
},
}
);
- Rename Field
db.posts.updateOne(
{
title: "Post 2",
},
{
$rename: {
likes: "views",
},
}
);