Skip to content

MongoDB compass find by id

  • by
mongodb compass find by id

1. Overview

In this article, we will learn to find documents by id in MongoDB compass. To learn more about MongoDB, refer to these articles.

2. MongoDB ObjectId

In MongoDB, _id field reserved as the primary key for the collection so that we can uniquely identify each document in the collection. The _id field contains a unique ObjectID value.

By default when inserting documents in the collection, MongoDB automatically generates and assigns ObjectId to the _id field of each document. ObjectID can be considered globally unique across all documents. 

You can also specify a 24-character hexadecimal string value explicitly for the ObjectId.

y = ObjectId("507f191e810c19729de860ea")

Alternatively, you can specify any other value to the _id field.

3. MongoDB compass find by id

In MongoDB compass, you can use the filter field in UI to find a document by _id field.

Filter fields by _id field in MongoDB

3. MongoDB find by id – aggregate pipeline

If you want to filter documents using _id field in the aggregate pipeline, you can use the $match stage.

The $match stage filters the documents to pass only the documents that match the specified condition(s) to the next pipeline stage.

{ $match: { <query> } }

$match takes a document that specifies the query conditions.

find by _id field in aggregate pipeline

You can place the $match as early in the aggregation pipeline as possible. Because $match limits the total number of documents in the aggregation pipeline, earlier $match operations minimize the amount of processing down the pipe.

$match has below restrictions:

To include an aggregation expression in $match, use a $expr query expression.

  • You cannot use $where in $match queries as part of the aggregation pipeline.
  • You cannot use $near or $nearSphere in $match queries as part of the aggregation pipeline.
  • To use $text in the $match stage, the $match stage has to be the first stage of the pipeline.

4. Conclusion

To sum up, we have learned to find a document by id in MongoDB.

Leave a Reply

Your email address will not be published. Required fields are marked *