How to Read Data in MongoDB (find, findOne)
1. Definition
In MongoDB, data is read using find() and findOne() methods. These are used to retrieve documents from a collection based on conditions.
2. When to Use
- Use find() to retrieve multiple documents
- Use findOne() to retrieve a single document
- When fetching user data, products, or orders
- When building APIs and dashboards
3. Where it is Used
- Inside MongoDB collections
- Backend applications (Node.js APIs)
- Data fetching in web apps
- Real-time applications
4. Why We Use It
- To retrieve stored data
- To filter and search records
- To display data in applications
- Supports flexible queries
5. How It Works
- Queries documents using conditions
- find() returns a cursor (multiple documents)
- findOne() returns the first matching document
- If no condition is given, returns all documents
Basic Syntax
// find() - multiple documents
db.users.find({ age: 22 });
// findOne() - single document
db.users.findOne({ name: "Manaswini" });Real Example
// Get all users
db.users.find();
// Get users with role Developer
db.users.find({ role: "Developer" });
// Get single user
db.users.findOne({ name: "Manaswini" });6. Explanation
- find() returns multiple matching documents
- findOne() returns only one document
- Filters are passed as objects
- Returns data in JSON format
7. Advantages
- Flexible querying
- Easy to use
- Supports filtering and conditions
- Fast data retrieval
8. Disadvantages
- Returns large data if not filtered
- Needs indexing for better performance
- Cursor handling required in some cases
Interview Points
- find() → returns multiple documents
- findOne() → returns single document
- Used for reading data (Read in CRUD)
- Supports filtering using query objects