- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Тренды маркетинга в 2024 году: мобильные продажи, углубленная аналитика и ИИ
Экспертная оценка Адмитад
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Читал тут - /ru/forum/724080, все понятно.
Но тормозит запрос сильно.
Есть таблица товаров (items), с полями описания товара.
Есть отдельная таблица с характеристиками (characters). Поля там: id_item, id_char, value_char
Нужно выбрать товар по нескольким характеристикам.
INNER JOIN mod_char_item mci3 on (mci3.id_char=3 and i.id_item=mci3.id_item and mci3.value_char>=0 and mci3.value_char<=101)
INNER JOIN mod_char_item mci2 on (mci2.id_char=2 and i.id_item=mci2.id_item and mci2.value_char>=0 and mci2.value_char<=94)
INNER JOIN mod_char_item mci10 on (mci10.id_char=10 and i.id_item=mci10.id_item and mci10.value_char>=0 and mci10.value_char<=10)
INNER JOIN mod_char_item mci9 on (mci9.id_char=9 and i.id_item=mci9.id_item and mci9.value_char>=0 and mci9.value_char<=10)
INNER JOIN mod_char_item mci4 on (i.id_item=mci4.id_item and mci4.id_char=4 and ( mci4.value_char='быстро тонущий'))
Limit 32
Если без Distinct, то выполняется быстро, но с ним более 8 секунд запрос считается.
Explain
1 SIMPLE mci4 ref id_item,value_char,id_char value_char 257 const 452 Using where; Using temporary
1 SIMPLE i eq_ref PRIMARY PRIMARY 4 fishingsale.mci4.id_item 1 Using where
1 SIMPLE mci9 ref id_item,value_char,id_char id_item 4 fishingsale.mci4.id_item 235 Using where; Distinct
1 SIMPLE mci10 ref id_item,value_char,id_char id_item 4 fishingsale.mci9.id_item 235 Using where; Distinct
1 SIMPLE mci3 ref id_item,value_char,id_char id_item 4 fishingsale.i.id_item 235 Using where; Distinct
1 SIMPLE mci2 ref id_item,value_char,id_char id_item 4 fishingsale.i.id_item 235 Using where; Distinct
---------- Добавлено 07.05.2013 в 12:02 ----------
P.s.
Заменил join на exists
Раза в 4 ускорился запрос