$unwind
MongoDB 🟡 MidDefinition
Stage d'aggregation qui decompacte un champ tableau en creant un document par element. Transforme un document avec un tableau de N elements en N documents.
Analogie
Ouvrir un paquet de bonbons et poser chaque bonbon sur la table individuellement.
Exemple de code
// { tags: ['js', 'mongo'] } devient :
// { tags: 'js' }
// { tags: 'mongo' }
{ $unwind: '$tags' }
Cas d'usage
Preparer les donnees d'un tableau pour un $group ou un $sort sur les elements individuels.
Anti-pattern
Appliquer $unwind sur des tableaux de milliers d'elements, multipliant la memoire utilisee.