In MongoDB, the find()
method is an essential aspect of working with collections. It enables you to search for specific documents within a collection by providing query parameters. In this section, we'll explore various find
methods and how to filter, sort, and limit the search results.
The basic find()
method is used to fetch all documents within a collection. To use it, you'll simply call the find()
method on a collection.
db.collection_name.find();
For example, to fetch all documents from a collection named users
:
db.users.find();
To search for specific documents, you would need to supply query parameters as a filter within the find()
method. Filters are passed as JSON objects containing key-value pairs that the documents must match.
For example, to fetch documents from the users
collection with the age
field set to 25
:
db.users.find({ age: 25 });
MongoDB provides multiple logical operators for more advanced filtering, including $and
, $or
, and $not
. To use logical operators, you pass an array of conditions.
For example, to find users with an age of 25
and a first name of John
:
db.users.find({ $and: [{ age: 25 }, { first_name: 'John' }] });
Projection is used to control which fields are returned in the search results. By specifying a projection, you can choose to include or exclude specific fields in the output.
To only include the first_name
and age
fields of the matching documents:
db.users.find({ age: 25 }, { first_name: 1, age: 1 });
You can also sort the results of the find()
method using the sort()
function. To sort the results by one or multiple fields, pass a JSON object indicating the order.
For example, to sort users by their age in ascending order:
db.users.find().sort({ age: 1 });
To limit the results of the find()
method, use the limit()
function. For instance, to fetch only the first 5
users:
db.users.find().limit(5);
Additionally, use the skip()
function to start fetching records after a specific number of rows:
db.users.find().skip(10);
All these find
methods combined provide powerful ways to query your MongoDB collections, allowing you to filter, sort, and retrieve the desired documents.