Nearby lessons

9 of 22

🔍 MongoDB: Find Documents

MongoDB provides powerful methods like `find()` and `findOne()` to search and retrieve documents. You can apply filters, projections, sorting, and pagination to control what data is returned.

📚 Initial Data Setup

MongoDB Shell
NoSQL
Database
1db.students.insertMany([
2 { name: 'Akshay Kumar', age: 23, class: 'BCA', city:'Delhi' },
3 { name: 'Rajesh Khanna', age: 24, class: 'Btech', city:'Mumbai' },
4 { name: 'Shahid Kapoor', age: 20, class: 'BSc', city:'Agra' },
5 { name: 'John Abraham', age: 19, class: 'BCA', city:'Delhi' },
6 { name: 'Aamir Khan', age: 24, class: 'Btech', city:'Agra' },
7 { name: 'Sunil Shetty', age: 22, class: 'BCA', city:'Mumbai' },
8 { name: 'Aamir Khan', age: 20, class: 'Btech', city:'Chandigrah' }
9]);
Query Result
JSON Output
✅ 7 student documents inserted successfully.

1️⃣ Using find() – Find All Matching Documents

MongoDB Shell
NoSQL
Database
1// Syntax
2db.collection_name.find({ field: "Value" });
3
4// Example: Find all students from Delhi
5db.students.find({ city: "Delhi" });
Query Result
JSON Output
🟢 Result:
[
{ "name": "Akshay Kumar", "age": 23, "class": "BCA", "city": "Delhi" },
{ "name": "John Abraham", "age": 19, "class": "BCA", "city": "Delhi" }
]

2️⃣ Using findOne() – Find First Matching Document

MongoDB Shell
NoSQL
Database
1// Syntax
2db.collection_name.findOne({ field: "Value" });
3
4// Example: Find one student from Agra
5db.students.findOne({ city: "Agra" });
Query Result
JSON Output
🟢 Result:
{ "name": "Shahid Kapoor", "age": 20, "class": "BSc", "city": "Agra" }

3️⃣ Using find() with Projection

MongoDB Shell
NoSQL
Database
1// Syntax
2db.collection_name.find(
3 { field: "Value" },
4 { field1: 1, field2: 1, field3: 0 }
5);
6
7// Example: Show name and city of students in Btech class, excluding _id
8db.students.find(
9 { class: "Btech" },
10 { name: 1, city: 1, _id: 0 }
11);
Query Result
JSON Output
🟢 Result:
[
{ "name": "Rajesh Khanna", "city": "Mumbai" },
{ "name": "Aamir Khan", "city": "Agra" },
{ "name": "Aamir Khan", "city": "Chandigrah" }
]

4️⃣ Using find().count() – Count Matching Records

MongoDB Shell
NoSQL
Database
1// Syntax
2db.collection_name.find().count();
3
4// Example: Count total number of students
5db.students.find().count();
Query Result
JSON Output
🧮 Total Students: 7

5️⃣ Using find().sort() – Sorting Results

MongoDB Shell
NoSQL
Database
1// Syntax
2db.collection_name.find().sort({ field: 1 }); // Ascending
3db.collection_name.find().sort({ field: -1 }); // Descending
4
5// Example 1: Sort all students by age (ascending)
6db.students.find().sort({ age: 1 });
7
8// Example 2: Sort students by name (descending)
9db.students.find().sort({ name: -1 });
Query Result
JSON Output
🟢 Sorted documents will appear in the chosen order.

6️⃣ Using find().limit() – Limit Number of Results

MongoDB Shell
NoSQL
Database
1// Syntax
2db.collection_name.find().limit(n);
3
4// Example: Show only first 3 student records
5db.students.find().limit(3);
Query Result
JSON Output
🟢 Result:
[
{ "name": "Akshay Kumar", ... },
{ "name": "Rajesh Khanna", ... },
{ "name": "Shahid Kapoor", ... }
]

7️⃣ Using find().limit().skip() – Pagination

MongoDB Shell
NoSQL
Database
1// Syntax
2db.collection_name.find().limit(n).skip(m);
3
4// Example: Skip first 3 records and show next 3
5db.students.find().limit(3).skip(3);
Query Result
JSON Output
🟢 Result:
[
{ "name": "John Abraham", ... },
{ "name": "Aamir Khan", ... },
{ "name": "Sunil Shetty", ... }
]
Keep Going!MongoDB - Comparison Operators