Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
$lookup
La etapa de $lookup agregación de Amazon DocumentDB le permite realizar una unión externa izquierda entre dos colecciones. Esta operación le permite combinar datos de varias colecciones en función de los valores de campo coincidentes. Resulta especialmente útil cuando necesita incorporar datos de colecciones relacionadas en los resultados de las consultas.
Parámetros
-
from: el nombre de la colección con la que se va a realizar la unión. -
localField: El campo de los documentos de entrada que debe coincidir con elforeignField. -
foreignField: El campo de los documentos de lafromcolección que coincide con ellocalField. -
as: el nombre del nuevo campo que se va a añadir a los documentos de salida que contienen los documentos coincidentes de lafromcolección.
Ejemplo (MongoDB Shell)
El siguiente ejemplo muestra una $lookup operación sencilla que une los datos de la orders colección en la customers colección.
Cree documentos de muestra
db.customers.insertMany([ { _id: 1, name: "Alice" }, { _id: 2, name: "Bob" }, { _id: 3, name: "Charlie" } ]); db.orders.insertMany([ { _id: 1, customer_id: 1, total: 50 }, { _id: 2, customer_id: 1, total: 100 }, { _id: 3, customer_id: 2, total: 75 } ]);
Ejemplo de consulta
db.customers.aggregate([ { $lookup: { from: "orders", localField: "_id", foreignField: "customer_id", as: "orders" } } ]);
Salida
[
{
_id: 1,
name: 'Alice',
orders: [
{ _id: 2, customer_id: 1, total: 100 },
{ _id: 1, customer_id: 1, total: 50 }
]
},
{ _id: 3, name: 'Charlie', orders: [] },
{
_id: 2,
name: 'Bob',
orders: [ { _id: 3, customer_id: 2, total: 75 } ]
}
]
Ejemplos de código
Para ver un ejemplo de código para usar el $lookup comando, elija la pestaña del idioma que desee usar: