
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
08.03.2016, 12:49
|
|||
|---|---|---|---|
Не могу понять причину долгого выполнения запроса |
|||
|
#18+
SELECT count(*) FROM `r1n2l_jshopping_products` WHERE product_id IN (SELECT product_id FROM `r1n2l_jshopping_products` WHERE product_id IN (SELECT prod.product_id FROM `r1n2l_jshopping_products` AS prod, `r1n2l_jshopping_products_to_categories` AS pr_cat WHERE pr_cat.product_id = prod.product_id AND pr_cat.category_id = '85' AND prod.product_publish = '1' AND prod.access IN (1,1) ) GROUP BY product_ean ) Такой запрос выполняется 20 секунд, хотя по отдельности части выполняются мгновенно. Я конечно понимаю, что написан криво, но движок не сильно дает возможность что-то изменить. Конечная задача - подсчитать количество групп в товаре. Группы характеризуются общим значением в поле product_ean Т.е у каждой группы свои одинаковые значения. Также это поле может принимать значение NULL и пробел. Если значение NULL или пробел, тогда каждую запись считать отдельной группой. В данном запросе последнее не реализовано. Просто не дошел до этого. Застрял на долгом выполнении имеющегося запроса. Подскажите, если не сложно. В чем грабли то. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.03.2016, 13:05
|
|||
|---|---|---|---|
Не могу понять причину долгого выполнения запроса |
|||
|
#18+
dimon71В чем грабли то.В конструкции IN (SELECT ...) если версия MySQL ниже 5.7 Или переписывайте через JOIN, или обновляйте MySQL. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=47&tablet=1&tid=1832083]: |
0ms |
get settings: |
8ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
171ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
28ms |
get tp. blocked users: |
1ms |
| others: | 218ms |
| total: | 458ms |

| 0 / 0 |
