Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: оптимизация запроса с подсчётом записей
 
 автор: skinny   (04.09.2013 в 12:26)   письмо автору
 
 

есть запрос


SELECT
            `i`.`id`,`i`.`parentid`,`i`.`title`,
            `c`.`title` AS `ptitle`,
            (SELECT COUNT(*) FROM `objects` AS `a` WHERE `categid` = `i`.`id` AND `a`.`statusid` = 2) AS `ccount`
        FROM `menuitems` AS `i`
        LEFT JOIN `menuitems` AS `c` ON `c`.`id` = `i`.`parentid`
        WHERE `i`.`parentid`>0 ORDER BY `i`.`parentid`, `i`.`id`



без выборки количества записей работает молниеносно, но вот с оной очень сильно тормозит.
Возможно ли его переписать пошустрее чтоб он работал?

если нет есть идея сохранять количество записей гдето в файле и обновлять например раз в сутки, но это скорее от отчаяния :)

база там большая на 10 000 записей поэтому то так и тормозит

  Ответить  
 
 автор: skinny   (04.09.2013 в 12:51)   письмо автору
 
   для: skinny   (04.09.2013 в 12:26)
 

вроде сам разобрался




SELECT
            `i`.`id`,`i`.`parentid`,`i`.`title`,
            `c`.`title` AS `ptitle`,
            COUNT(`o`.`id`) AS `ocount`

        FROM `menuitems` AS `i`
        JOIN `menuitems` AS `c` ON `c`.`id` = `i`.`parentid`

        JOIN `objects` AS `o` ON `o`.`categid` = `i`.`id`

        WHERE (`i`.`parentid`>0)

        GROUP BY `i`.`id`

        ORDER BY `i`.`parentid`, `i`.`id`


  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования