mongodbHow to join two collections in MongoDB?
MongoDB provides the $lookup operator to join two collections. This operator takes two parameters, from and localField. from specifies the collection to join with and localField specifies the field from the current collection to match with the from collection.
Example
db.collection1.aggregate([
{
$lookup:
{
from: "collection2",
localField: "field1",
foreignField: "field2",
as: "joined_data"
}
}
])
Output example
{
"_id" : ObjectId("5f3d7f9f8f8d7f3d7f9f8d7"),
"field1" : "value1",
"joined_data" : [
{
"_id" : ObjectId("5f3d7f9f8f8d7f3d7f9f8d7"),
"field2" : "value1",
"other_field" : "value2"
}
]
}
Code explanation
$lookup: The MongoDB operator used to join two collections.from: The collection to join with.localField: The field from the current collection to match with thefromcollection.foreignField: The field from thefromcollection to match with the current collection.as: The name of the new array field to add to the documents.
Helpful links
More of Mongodb
- How to empty an array in MongoDB?
- How to use watch in MongoDB?
- How to use transactions in MongoDB?
- How to use unwind in MongoDB?
- How to check the version of MongoDB?
- How to use MongoDB queue?
- How to use MongoDB pull?
- How to use triggers in MongoDB?
- How to use the limit operator in MongoDB?
See more codes...