У меня есть документ mon go, как показано ниже;
{
"_id": "123",
"name": "ABC",
"elements": {
"_id": "123",
"minorElements": [
[
{
"id": "xyz1",
"name": "xyz1"
}, {
"id": "xyz2",
"name": "xyz2"
}, {
"id": "xyz3",
"name": "xyz3"
}
],
[
{
"id": "xyz1",
"name": "xyz1"
}, {
"id": "xyz3",
"name": "xyz3"
}, {
"id": "xyz5",
"name": "xyz5"
}
]
]
}
}
"elements.minorElements" - это массив массива.
Как написать агрегацию mon go удалить объекты из "elements.minorElements", где "id" не в "xyz1" и "xyz2"?
Ожидаемый результат:
{
"_id": "123",
"name": "ABC",
"elements": {
"_id": "123",
"minorElements": [
[{
"id": "xyz1",
"name": "xyz1"
}, {
"id": "xyz2",
"name": "xyz2"
}
],
[{
"id": "xyz1",
"name": "xyz1"
}
]
]
}
}
образец полезной нагрузки https://mongoplayground.net/p/9RjC6GzSQDQ