У меня есть документ на монго, в котором мне нужно удалить все элементы line_items, идентификатор которых отсутствует. Проблема заключается в том, что сам carrier_orders является массивом, а line_items также является массивом. ниже приведена структура документа:
{
"carrierOrder": [
{
"id": 1636354,
"costs": {
"totalAmount": 110,
"lineItem": [
{
"amount": 110,
"deleted": false,
"id": 3464888,
"price": 55,
"qty": 2,
"code": {
"id": 135431,
"key": "1600",
"value": "Freight - flat"
}
}
]
},
"deleted": true,
"carrierPO": ""
},
{
"id": 1668540,
"costs": {
"totalAmount": 110,
"lineItem": [
{
"amount": 110,
"deleted": false,
"id": 3527307,
"price": 55,
"qty": 2,
"code": {
"id": 135431,
"key": "1600",
"value": "Freight - flat"
}
},
{
"amount": 110,
"deleted": false,
"price": 110,
"qty": 1,
"code": {
"id": 135431,
"key": "1600",
"value": "Freight - flat"
}
}
]
},
"deleted": false,
"carrierPO": ""
}
],
"id": 3949038,
"customId": "31428-26396"
}
Я перепробовал много запросов и закрытий, которые я достиг с запросом ниже
db.shipmentFormFieldData.update({"value.carrier_orders.$[].costs.line_items.$[].id":{$exists: false}},{$unset:{"value.carrier_orders.$[].costs.line_items":""}})
Я хочу удалить все строки line_items, в которых поле id являетсяотсутствует