Оптимизировать запрос Sql (в Laravel) - PullRequest
0 голосов
/ 16 апреля 2020

Подскажите, пожалуйста, способы оптимизации для этого запроса. Или мне нужно внести некоторые изменения, чтобы установить индексы.

$subQuery->selectRaw("
            product_zip,
                AVG(case
                   when product_time >  $to_start_of_month
                    and product_time < $to_end_of_month
                    then product_price / product_covered_area end
                ) as current_month_price,
                AVG(case
                    when product_time >  $from_start_of_month
                    and product_time < $from_end_of_month
                    then product_price / product_covered_area end
                ) as previous_month_price

            ");

            $subQuery->join('types', function ($join) {
                return $join->on('products.product_type_id', '=', 'types.type_id');
            });

            $subQuery->where('types.type_property', $type_property);
            $subQuery->having('current_month_price', '>', 0);
            $subQuery->having('previous_month_price', '>', 0);

            $subQuery->groupBy('product_zip');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...