Выберите ключ вложенного объекта в соответствии со значением, хранящимся в массиве внутри него в mongodb при агрегации. - PullRequest
0 голосов
/ 22 марта 2019

У меня есть схема в форме, показанной ниже, после нескольких этапов конвейера агрегации.

{
    _id:"uid1",
    x:{
        ab:{
            u:["uid1","uid2","uid3"]
        },
        pq:{
            u:["uid4","uid5"]
        },
        qw:{
            u:["uid6"]
        }
    }
}

На следующем этапе конвейера мне нужно что-то вроде ниже

{
    _id:"uid1",
    ut:"ab"
}

Поскольку идентификатор пользователя присутствует в массиве user (u), присутствующем внутри ab. Проблема в том, что я не могу напрямую ссылаться на ab, pq, qw и т. Д., Потому что больше из них можно добавить позже, и вторая проблема в том, что я не могу использовать массив, я знаю, что было бы легче получить информацию с этим, но мне нужно мое Данные в форме ассоциативного массива только для других конкретных нужд приложения. Я новичок в mongoDB, любая помощь будет оценена. Заранее спасибо

...