Привет. У меня проблема с вложенным запросом, который соответствует значению уникальному ключу.
Моя схема выглядит следующим образом:
const AnalyticsSchema = mongoose.Schema({
requestsByStatusNew: Number,
requestsByStatusNewIds: Schema.Types.Mixed,
})
Где requestByStatusNewIds имеет форму:
{
UNIQUE_ID: 1,
ANOTHER_UNIQUE_ID: 1
}
То, что я хотел бы сделать, - найти и вернуть объект в моей коллекции, где запрос соответствует одному из вложенных уникальных идентификаторов. Это возможно?
Это то, что я пытался сделать:
const query = {
requestsByStatusNewIds: {
}
};
query['requestsByStatusNewIds']['${request._id}'] = 1;
Analytics.find(query, '_id').then((err, analytics) => {
console.log(analytics);
console.log(err);
});
Похоже, вам нужно условие or
условие здесь для UNIQUE_ID
и ANOTHER_UNIQUE_ID
db.collection.find({
"$or": [{
"requestsByStatusNewIds.UNIQUE_ID": "ID"
}, {
"requestsByStatusNewIds.ANOTHER_UNIQUE_ID": "ID"
}]
});
or
чтобы найти все документы, где идентификатор равенUnique/anotherUnique
?