$unwindЭтап $unwind разворачивает поле массива в документе, выводя один отдельный документ для каждого элемента этого массива.
Если документ содержит массив с 3 элементами, $unwind преобразует его в 3 отдельных документа, каждый содержащий один элемент исходного массива.
Например, дан такой документ:
{ _id: 1, colors: ["red", "green", "blue"] }
После применения $unwind: "$colors" результат будет:
{ _id: 1, colors: "red" }
{ _id: 1, colors: "green" }
{ _id: 1, colors: "blue" }
$lookup$groupincludeArrayIndex, чтобы сохранить исходную позицию элемента в массивеpreserveNullAndEmptyArrays: true гарантирует, что документы с пустыми или null массивами не теряются в результирующей выборкеСтадия $unwind преобразует один документ, содержащий поле с массивом, в несколько документов, каждый из которых содержит один элемент из исходного массива.
Новый — ещё не проверен сообществом
Вы