Добрый день, хочу узнать, правильно ли я использую группировку по месяцам, сама группировка возвращает корректные данные, но работает очень медленно. Вот кусок кода, просто убрал большую часть вложенных SELECT-ов:
SELECT month(`requests`.`date`) as dt,
/** Общая статистика **/
/* Определить: каличество поступивших заявок */
(SELECT COUNT(*)
FROM `object_requests`
LEFT JOIN `requests` ON `object_requests`.`id_request` = `requests`.`id`
WHERE
DATE(`requests`.`date`) >= DATE(?) AND
DATE(`requests`.`date`) <= DATE(?) AND
month(`requests`.`date`)=`dt`
) as `all_requests`,
/* Определить: каличество включенных в план заявок */
(SELECT COUNT(*)
FROM `object_requests`
LEFT JOIN `requests` ON `object_requests`.`id_request` = `requests`.`id`
WHERE
`requests`.`status` = 0 AND
DATE(`requests`.`date`) >= DATE(?) AND
DATE(`requests`.`date`) <= DATE(?) AND
month(`requests`.`date`)=`dt`
) as `included_requests`
FROM `object_requests`
LEFT JOIN `requests` ON `object_requests`.`id_request` = `requests`.`id`
WHERE DATE(requests.date) >= DATE(?) AND DATE(requests.date) <= DATE(?) GROUP BY month(requests.date) ORDER BY date