Can a document in MongoDB has same objectID as another document in other collection?

Like if I have an _id ObjectID type created by default in a specific collection for a document, will there be any possibility that another collection has same value for _id ObjectID type for any one of the document in the respective collection?

Hi @Yaswanth_Naga_Varma_Raju_Kakarlapudi
Welcome to the community!!

The _id field is a unique identifier which acts as a primary key to the specific collection. If an inserted document does not contain _id filed value, it automatically assigns default value to the document inserted.

To answer your question, _id with type as ObjectId will always be unique to the collection and would not be same for another document as ObjectId type follows a pattern where it consists of:

  1. 4-byte Timestamp value
  2. 5 byte Random Value
  3. 3-Byte incrementing counter
    which makes it unique at all times

Please refer to the ObjectId documentation here.

Please let me know if you have any more questions.

Thanks
Aasawari

4 Likes

I want to add my 2 cents.

While your driver will not generate 2 identical ids, nothing stops you to use the same ObjectID of one collection as the _id in another collections.

For example, for the outlier pattern, you may use the ObjectID of the core collection as the _id of extra in the extra collection.

Another example, could be for record keeping of the history of document modifications. The _id:ObjectID of the historical data could be the same _id:ObjectID as the core document.

3 Likes

This topic was automatically closed 5 days after the last reply. New replies are no longer allowed.