Работает как шарм! Большое спасибо!

я есть две коллекции:

Игры со схемой:

 _id: ObjectId('gameId'),
 questions: [
   {
     position: 1,
     question_id: ObjectId('baz')
   },
   {
     position: 2,
     question_id: ObjectId('ban')
   },
 ]

Вопросы со схемой:

 _id: ObjectId('baz'),
 text: 'FooBar'

А теперь я хотел бы присоединить вопросы к играм с добавлением к каждому значению записи вопросаquestion_position.

Итак, у меня есть запрос как это:

db.games.aggregate([
    {
      $lookup: {
        from: 'questions',       
        localField: 'questions.question_id',
        foreignField: '_id',       
        as: 'question_data',     
      },   
     }])

Которые возвращают мне всю необходимую информацию, с правильным соединением в соответствии с массивом вопросов,

 _id: ObjectId('gameId'),
 questions: [
   {
     position: 1,
     question_id: ObjectId('baz')
   },
   {
     position: 2,
     question_id: ObjectId('ban')
   }
 ],
 question_data: [
   {
     _id: ObjectId('baz'),
     text: 'FooBar',
   },
   {
     _id: ObjectId('ban'),
     text: 'FooBar2',
   }
 ]

но я совершенно не могу понять, как добавить в объединенные вопросы свою позицию в соответствии с игрой. Чтобы выглядеть так:

 _id: ObjectId('gameId'),
 questions: [
   {
     position: 1,
     question_id: ObjectId('baz')
   },
   {
     position: 2,
     question_id: ObjectId('ban')
   }
 ],
 question_data: [
   {
     _id: ObjectId('baz'),
     text: 'FooBar',
     position: 1,
   },
   {
     _id: ObjectId('ban'),
     text: 'FooBar2',
     position: 2,
   }
 ]


Я пробовал с$unwind за массив вопросов в игровой коллекции, немного поиграл с$project вaggregation но до сих пор нет результата.

Такмой вопрос, как добавить поле из базовой коллекции к объединенным данным из другой коллекции

Ответы на вопрос(1)

Ваш ответ на вопрос