Ниже моя environment
структура данных
"environments" : [
{
"environmentId" : "375daa2e-d7e1-42ef-b40a-83e50f1ffa32",
"environmentName" : "Urban",
"environmentType" : "green",
"services" : [
{
"serviceId" : "78a2ec19-6b71-447b-9f0d-8978204274af",
"serviceName" : "railways",
"serviceType" : "transport"
},
{
"serviceId" : "5dddddddd-6b71-447b-9f0d-8978204274af",
"serviceName" : "Doctor",
"serviceType" : "people"
},
{
"serviceId" : "4ddddddd-6b71-447b-9f0d-8978204274af",
"serviceName" : "Bus",
"serviceType" : "transport"
}
]
}
]
Я запрашиваю запрос, используя serviceId
и пытаюсь получить только соответствующий service
элемент
db.mydatabase.find( {'environments.services' : { $elemMatch: { 'serviceId': "78a2ec19-6b71-447b-9f0d-8978204274af" }}},{'environments.services.$': 1} ).pretty()
Но этовозвращает мне все services
в пределах этого environment
.. но я хочу только это соответствие service