Mongo DB Query для получения записей, которые соответствуют двум полям - PullRequest
0 голосов
/ 11 мая 2018

Я добавляю записи ниже в коллекцию

db.mycollection.insertMany([
{student : 1 , course : 1},
{student : 1 , course : 2},
{student : 2 , course : 1},
{student : 2 , course : 2},
{student : 3 , course : 1}
])

Я хочу, чтобы все студенты, которые подали заявки на курсы 1 и 2., что должен быть запрос для того же в mongo db?

1 Ответ

0 голосов
/ 11 мая 2018

Вот, пожалуйста:

db.mycollection.aggregate([{
    $group: {
        _id: "$student", // group by student
        "courses": { $push: "$course" } // remember all courses in an array
    }
}, {
    $match: { // filter
        "courses": { // where "courses"
            $all: [ 1, 2 ] // contains both 1 and 2
        }
    }
}])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...