Я имею в виду 2 коллекции, профиль и подписчиков. Профили содержат информацию о ..profile (характеристики, идентификатор фотографии и т. Д.), А последователи содержат ссылку на профиль _ID. Я прикрепил образец этого 2 сборочный комплект. Мы видим, что в следящей коллекции последние последователи bob (_id 1) равны 4,2,3 соответственно принц, джон, алиса. _id 3 является alice, и это последний вставленный.Простой узор, сортировать по прошедшим подпискам
Мне нужно отобразить всю информацию о профилях (содержать в коллекции профилей) всех последних последователей боба в логическом порядке «новый до старости». Я предполагаю, что ему нужны 2 запроса, но даже я не нашел решение/функцию для этого, возможно ли это? Если вы знаете, если это невозможно в двух запросах, я полностью открыт для других шаблонов.
Для приведенного выше примера, результат, ожидаемый (обратите внимание на порядок 3, 2, 4) должно быть:
{
"_id" : 3,
"name" : "alice",
"Region1" : "Alsace",
"code_postal" : 67240,
"ville" : "Oberhoffen-sur-Moder",
"photo_id" : 7800098
}
{
"_id" : 2,
"name" : "jhon",
"Region1" : "Alsace",
"code_postal" : 67240,
"ville" : "Oberhoffen-sur-Moder",
"photo_id" : 7111987
}
{
"_id" : 4,
"name" : "prince",
"Region1" : "Alsace",
"code_postal" : 67240,
"ville" : "Oberhoffen-sur-Moder",
"photo_id" : 6535098
}
коллекция профиль образца:
db.profile.find()
{
"_id" : 1,
"name" : "bob",
"Region1" : "Alsace",
"code_postal" : 67240,
"ville" : "Oberhoffen-sur-Moder",
"photo_id" : 7863635
}
{
"_id" : 2,
"name" : "jhon",
"Region1" : "Alsace",
"code_postal" : 67240,
"ville" : "Oberhoffen-sur-Moder",
"photo_id" : 7111987
}
{
"_id" : 3,
"name" : "alice",
"Region1" : "Alsace",
"code_postal" : 67240,
"ville" : "Oberhoffen-sur-Moder",
"photo_id" : 7800098
}
{
"_id" : 4,
"name" : "prince",
"Region1" : "Alsace",
"code_postal" : 67240,
"ville" : "Oberhoffen-sur-Moder",
"photo_id" : 6535098
}
сбор подписей образец:
db.followers.find()
{
"_id" : 1,
"followers" : [4,2,3]
}
{
"_id" : 2,
"followers" : [8,2,3,11,39,653,]
}
{
"_id" : 3,
"followers" : [9,76,538,111,134]
}