Я эту структуру данных:Найти Объект Object MongoDB не возвращает никаких значений
{
"_id" : ObjectId("582ecaa97be792282ca31bc4"),
"hero" : {
"5001" : {
"id" : 5001
"name" : "Rogue"
}
"5002" : {
"id" : 5002
"name" : "Mage"
}
"5003" : {
"id" : 5002
"name" : "Paladin"
}
}
}
У меня есть запрос.
db.getCollection('hero').find({"Hero":{"5001":{"id" : 5001}}})
Он возвращает 0 результатов. Я мог бы хранить Герос отдельно, но я хотел бы знать, как это сделать в первую очередь. Я хотел бы получить от этого все данные под 5001, если я запрошу 5001 и так далее.
Спасибо!
Редактировать: Я нашел ответ, используя точечную нотацию, я уже пробовал обозначение точки, но я немного ошибся при попытке, я думал, что это только для массивов. Вот что вы будете делать, если кто-то еще смотрит.
db.Runes.find({ "hero.5001.id": 5001 },{"hero.5001":1})
Я Вам необходимо изменить структуру документа и сделать 'hero' массив поддокументами. – styvane
Конечно, я тоже сделаю это, спасибо! – Djinnes