У меня есть document
, называемый Mapping
, который имеет _id
и массив объектов под названием Mappings. У меня есть еще collection
под названием NewMappings
. Для каждого _id
в NewMappings
, мне нужно найти в пределах Mappings (of Mapping collection)
и вернуть _id
из Mapping
.Поиск коллекции MongoDB на основе другого
Я написал что-то вроде этого, но ничего не смог вернуть.
var d=db.NewMappings.find();
d.forEach(function(item){
db.matching.find({Mappings: {$elemMatch : {TargetId: item._id}}})
})
однако, этот запрос возвращаемые значения
var d=db.NewMappings.find();
db.matching.find({Mappings: {$elemMatch : {TargetId: d[0]._id}}})
ли я что-то отсутствует? Пожалуйста, помогите мне. Я в темноте. заранее спасибо.
В коде, где вы используете Foreach, вы создаете функцию, которая не возвращает значение. Вам нужно сохранить его или распечатать. –
Можете ли вы добавить фрагмент кода, чтобы показать это? Благодарю. – user3245595