MongoDB-PHP: JOIN-подобный запрос - PullRequest
1 голос
/ 20 апреля 2010

Вот объекты:

courses
{ "name" : "Biology", "_id" : ObjectId("4b0552b0f0da7d1eb6f126a1") }
students
{
        "name" : "Joe",
        "classes" : [
                {
                        "$ref" : "courses",
                        "$id" : ObjectId("4b0552b0f0da7d1eb6f126a1")
                }
        ],
        "_id" : ObjectId("4b0552e4f0da7d1eb6f126a2")
}

С помощью класса PHP Mongo, как получить всех студентов, у которых есть курс биологии?

Спасибо

1 Ответ

2 голосов
/ 21 апреля 2010

Вам нужно будет сделать запрос дважды. Передо мной нет окружения, но что-то похожее на то, что внизу. Возможно, у меня неправильная «вложенная» часть второго запроса.

// Сначала захватите ID курса.

$course = $collection->findOne(array("name" => "Biology"));

// Следующий запрос к коллекции студентов.

$collection->find(array("classes" => array("id" => $course['_id'])));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...