Mongo Shell Найти документ с вложенными массивами

В оболочке монго я вставил следующие документы в коллекцию гостей:

{
    "name": "Jackson",
    "title": "Sir",
    "preferences": [
        {
            "Restaurant": "LobsterHouse"
        },
        {
            "Room": "333"
        },
            {
            "Transportation": [
                "Limo",
                "Town Car",
                "Taxi"
            ]
        }
    ]
},
{
    "name": "Peterson",
    "title": "Mr",
    "preferences": [
        {"Restaurant": "Lobster House"},
        {"Room": "321"},
        {"Transportation": "Town Car"}
    ]
},
{
    "name": "Hodgson",
    "title": "Mrs",
    "preferences": [
        {"Restaurant": "The Sushi Bar"},
        {"Room": "180"},
        {"Transportation": "Taxi"}
    ]
}

Я хочу иметь возможность искать это двумя способами,

1) Получить всех гостей, где внутри предпочтений, Транспорт равен "Такси"

Я пытался:db.guests.preferences.find({"Transportation":"Taxi"})

Также я попробовал следующий метод поиска и только вернуть "Ходжсон"

db.guests.find({preferences: {"Transportation":"Taxi"}})

Что я не могу понять, почему он не идет внутрь "Джексона" и не находит значение в массиве "Транспортных" предметов

Любая помощь приветствуется

0 ответов

Другие вопросы по тегам