Запропонувати правкуПокращити цю статтюДопрацюйте відповідь до «Що робить стадія $project?». Ваші зміни проходять модерацію перед публікацією.Потрібне підтвердженняКонтентЩо ви змінюєте🇺🇸EN🇺🇦UAПереглядЗаголовок (UA)Коротка відповідь (UA)Стадія `$project` формує нову "проєкцію" документа - тобто обирає, перейменовує чи обчислює поля, які потраплять далі в pipeline; за змістом аналог `SELECT` в SQL. **Ключове:** може лишати лише потрібні поля, приховувати зайві, створювати обчислювані поля й перейменовувати їх - готуючи документ до наступної стадії чи до фінальної відповіді.Показується над повною відповіддю для швидкого нагадування.Відповідь (UA)ЗображенняСтадія `$project` формує **нову "проєкцію" документа** - тобто обирає, перейменовує чи обчислює поля, які потраплять далі в pipeline. Аналог за змістом - `SELECT` в SQL. ### Що вона може робити - лишити лише потрібні поля - приховати зайві поля - створити обчислювані поля - перейменувати поля - вкласти чи розкласти дані по-іншому ### Приклад ```js { $project: { name: 1, totalPrice: { $multiply: ["$price", "$qty"] } } } ``` Після `$project` у документі лишаться лише `name` і нове поле `totalPrice`. ### Ключовий сенс `$project` - це **стадія формування кінцевого набору полів**, завдяки якій документ можна спростити, перезібрати й підготувати до наступної стадії чи фінальної відповіді.Для рев’юераПримітка для модератора (необов’язково)Бачить лише модератор. Прискорює рев’ю.