Получить строки, если ключ имеет значение c в массиве массивов mongodb - PullRequest
0 голосов
/ 16 июня 2020

Я не могу получить строки по условию. Условие основано на идентификаторе, но этот идентификатор является значением ключа внутри объекта, который находится внутри массива, а также массив находится внутри другого массива.

Итак, у меня есть

Cinema (ARRAY) -> ARRAYS (0,1,2,3 ....) -> OBJECTS внутри каждого ARRAY

Мне нужен объект, для которого совпадает cinema_id_db.

Например, этот код возвращает данные

cinema[0][0]['cinema_id_db'] = ObjectId("5b44a78b38be3aeb31f092cb")

код

{ "cinema.0.0.cinema_id_db" : ObjectId("5b44a78b38be3aeb31f092cb")}

Мне нужно что-то вроде

cinema[x][y]['cinema_id_db'] = ObjectId("5b44a78b38be3aeb31f092cb")

Вот как db выглядит

enter image description here

enter image description here

1 Ответ

0 голосов
/ 18 июня 2020

вы можете получить это значение, которое хотите получить, следующим образом

let cinema_id_db = cinema[0][0].cinema_id_db

OR

var ciname_ids_db = [];
var index = 0;
cinema.forEach(element => { 
    element.forEach(elem => {
        ciname_ids_db[index++] = elem.cinema_id_db
    })
})
...