Как я могу попытаться получить информацию из 2 или более коллекций в MongoDB, используя драйвер PHP

Мне нужно получить информацию о 2 разных коллекциях в MongoDB, используя драйвер PHP mongo.

Я знаю, что недавно Университет Монго добавил новую функцию под названием «поиск», но я не знаю, как применить эту опцию в методе php mongo find (). (Кажется, что не готов к PHP)

В любом случае, что может быть лучшим вариантом для получения информации из более чем коллекции?

Создать временную коллекцию, добавляя информацию из каждой коллекции?

0

Решение

Loopkup — это этап конвейера для структуры агрегации.

Вы можете использовать его как этап в aggregate метод сбора. Проверить php doc об этом здесь.

Как пример, ссылаясь на примерные данные документа здесь Вы можете попробовать следующий код:

$m = new MongoClient("localhost");
$c = $m->selectDB("examples")->selectCollection("orders");

$ops = array(
array(
'$lookup' => array(
'from' => 'inventory',
'localField'   => 'item',
'foreignField' => 'sku',
'as' => 'inventory_docs'
)
);
$results = $c->aggregate($ops);

Надеюсь это поможет

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]