Как соединить два документа по идентификатору - PullRequest
0 голосов
/ 30 мая 2020

Мне нужна помощь с elasticsearch. Я хочу объединить две вещи. Схема для первой вещи выглядит так:

STAT GROUP

{
    "_id": 38282922829,
    "statValues": [{
          _ref: 282828290,
     }]
}

STAT DATA

{
    "_id": 282828290,
    "key": itemsGained
}

Как видите, я хочу объединить все ссылки в statvalues ​​с идентификатором для данных stat. Как мне это сделать?

1 Ответ

0 голосов
/ 30 мая 2020

Для этого необходимо использовать операторы $unwind и $lookup.

db.STAT_GROUP.aggregate([
  {
     $unwind: '$statValues'
  },
  {
     $lookup: {
       from: 'STAT_DATA',
       localField: 'statValues._ref',
       foreignField: '_id',
       as: 'Refs'
     }
  }
])

MongoPlayGroundLink

...