Ejemplo $lookup

$lookup

{
   $lookup:
     {
       from: <collection to join>,
       let: { <var_1>: <expression>,, <var_n>: <expression> },
       pipeline: [ <pipeline to execute on the collection to join> ],
       as: <output array field>
     }
}

Funciona con un innerjoin uniendo colecciones dentro de la misma base de datos

Referencia

https://docs.mongodb.com/manual/reference/operator/aggregation/lookup/index.html

Queremos mostrar los modelos en cada articulo

Unimos las dos coleecciones en base al atributo idmodelo, si se observa se crea un nuevo atributo modelo_docs.que contiene el documento del modelo correspondiente.

db.articulo.aggregate([ { $lookup: { from: "modelo", localField: "modelo.idmodelo", foreignField: "idmodelo", as: "modelo_docs" } } ])

salida

Last updated