Покажу на примере потому что заглавие вышло не удачное. Работаем с базой MongoDB. Вот таблица.
{
"numbers": {
"0": "10",
"1": "11",
"2": "12"
},
"type": "1",
"otherBigVal":"очень много текста..."
},
{
"numbers": {
"0": "1",
"1": "2",
"2": "11",
"3": "10"
},
"type": "1",
"otherBigVal":"очень много текста..."
},
{
"numbers": {
"0": "18",
"1": "14",
},
"type": "2",
"otherBigVal":"очень много текста..."
}
Необходимо выбрать все numbers где type==«1» и обьеденить значения с numbers. В результате мы должны поучить вот это [10,11,12,1,2]
Причем в базе записей очень много. Потому важно максимально оптимизировать выполнение задачи.
Пока решение придумал такое.
Делаем запрос {type:«1»}
Потом в PHP проходим циклом и объединяем массивы.
Но во первых мы с базы вытягиваем все поля хотя нам нужно только numbers. Во вторых мы лишний раз проходим их в коде.
При большом количестве данных это печально. Подскажите как можно улучшить оптимизацию.