Таблица A и результаты почти 700 КБ данных.Но в ближайшее время оно пересечет миллион.data_a
считает все данные для сопоставления столбца с текстом.
<?php
$accessories_count_all = TableA::count();
$data_all = TableB::orderBy('id', 'desc')->paginate(16);
$name = [];
foreach ($data_all->chunk(5000) as $data) {
foreach ($data as $value) {
$data_a = DB::table('result')
->where('column', 'text')
->count();
$per_list = [
'count_data' => $data_a,
'view_name' => $value->view_name,
];
$name[] = $per_list;
}
}
$per_var_count = $name;
Я пытаюсь оптимизировать запрос, используя chunk()
.Однако это занимает много времени и время ожидания сервера.Каков наилучший способ обработки этого запроса с использованием большого набора данных?