$lookup
MongoDB 🟡 MidDefinition
Stage d'aggregation qui realise une jointure gauche (LEFT JOIN) entre deux collections. Ajoute un tableau de documents correspondants depuis la collection jointe.
Analogie
Appeler le service comptabilite pour joindre les factures de chaque client a leur fiche.
Exemple de code
{ $lookup: {
from: 'orders',
localField: '_id',
foreignField: 'userId',
as: 'userOrders'
}}
Cas d'usage
Combiner des donnees de collections separees quand l'embedding n'est pas adapte.
Anti-pattern
Faire des $lookup sur des collections non indexees sur le foreignField, rendant la jointure O(n*m).