Я хочу сделать запрос и использовать полученное значение для поиска другого в том же запросе. Моя коллекция выглядит так:
{
"houses": {
123: {
"color": "white",
"location": "California"
},
124: {
"color": "blue",
"location": "Las Vegas"
}
},
"owners": {
"Anne": {
"house": 124,
},
"Jake": {
"house": 123
}
}
}
Перед выполнением запроса я буду знать только имя владельца, и я хотел бы получить информацию о доме (цвет, местоположение).
What Я спрашиваю, есть ли способ использовать номер дома для получения информации о доме в том же запросе. Примерно так:
db.collection.aggregate([
{'$project' {'houses': 1, 'house_number': '$owners.Anne.house'}},
{'$project': {'house_info': 'houses.$house_number':1}}
])
Я попытался сделать номер дома строкой и связать его с $ homes, но mon go не позволяет мне объединить символ $. Я избегаю делать два запроса: один для получения номера дома, а второй - для получения информации о доме.
Может ли кто-нибудь помочь мне с этим? Извините, если я не могу хорошо объяснить себя, английский sh не мой родной язык.