powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Оптимизация запроса
4 сообщений из 4, страница 1 из 1
Оптимизация запроса
    #39270382
V2oD2o
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Имеется запрос:

SELECT a.* , b.`image`, b.`annotation`, b.`FullDesc`
FROM `stalker-co_ru_products` AS a
LEFT JOIN `stalker-co_sqlextend_data` AS b ON b.`NomCode`=a.`NomCode`
WHERE a.`GroupID`='11111' OR a.`GroupID`='22222';

в WHERE, этих OR может быть до 40шт (пробовал через IN ('11111','22222') - результат хуже), как то можно сделать просто проверку не пустые ли значения в b ? т.е. b.`image`, b.`annotation`, b.`FullDesc` - мне данные в них не нужны, только проверка на заполненность.. а то FullDesc - очень жирное поле, имхо изза него тормозит сильно, запрос выполняется порядка 2-20 сек - т.е. ни в какие ворота.. железка на сервере сильно нагруженная, запас производительности почти нулевой под мои задачи..
...
Рейтинг: 0 / 0
Оптимизация запроса
    #39270387
V2oD2o
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дело в том что при входе в категорию - надо вывалить весь список товаров во всех вложенных категориях + уточнить в другой таблице есть ли у каждого товара описание, картинки и т.п. и вывести соответствующие данные
...
Рейтинг: 0 / 0
Оптимизация запроса
    #39270396
V2oD2o
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Мда, быстрее не стало...

SELECT a.* , IF (b.`image`<>'', true, false) AS image , IF (b.`annotation`<>'', true, false) AS annotation, IF (b.`FullDesc`<>'', true, false) AS FullDesc FROM `stalker-co_ru_products` AS a LEFT JOIN `stalker-co_sqlextend_data` AS b ON b.`NomCode`=a.`NomCode` WHERE a.`GroupID` IN ('11111','22222')
...
Рейтинг: 0 / 0
Оптимизация запроса
    #39270404
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
V2oD2oкак то можно сделать просто проверку не пустые ли значения в b ? т.е. b.`image`, b.`annotation`, b.`FullDesc` - мне данные в них не нужны, только проверка на заполненность..
А за каким хреном тогда ты используешь левое связывание? Сделай внутреннее, "пустые" сами отсеются.

Код: sql
1.
2.
3.
4.
SELECT a.*
FROM `stalker-co_ru_products` AS a, `stalker-co_sqlextend_data` AS b 
WHERE b.`NomCode`=a.`NomCode`
  AND a.`GroupID` IN ('11111', '22222');



Ну и индексы stalker-co_ru_products (NomCode, GroupID) и stalker-co_sqlextend_data (NomCode) создай...
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Оптимизация запроса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]