Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Многократный JOIN (Roman) 03/02/2011 - 22:34:59



From: Roman - 03/02/2011 - 22:34:59
Subject:Многократный JOIN
-----------------
Приветствую, уважаемые специалисты!

Столкнулся с одной задачкой на оптимизацию, объясню вкратце:
есть две таблицы:
`list` с полями `id`, `name`
`param` с полями `id`, `list_id`, `value`
Здесь идет связь один ко многим (`list`.`id`=`param`.`list_id`)
В таблице `param` хранятся параметры записей из таблицы `list`

Так же имеются значения нужных параметров: $param1=23, $param2='seo' и т.п.

Собственно теперь задача:
Выбрать из таблицы `list` только те записи, для которых значения параметров из таблицы `param` соответствуют заданным параметрам: $param1, $param2 и т.п.

Мое решение:
SELECT `list`.`id`, `list`.`name`
FROM `list`
LEFT JOIN `param` AS p1 ON (p1.`list_id`=`list`.`id`)
LEFT JOIN `param` AS p2 ON (p2.`list_id`=`list`.`id`)
WHERE p1.`id`=1 AND p1.`value`=$param1 AND p2.`id`=2 AND p2.`value`=$param2

Т.е. для каждого значения параметра делаем свою выборку из одной и той же таблицы параметров.
В примере всего два параметра, а представляете что будет, если параметров, хотя бы 15

Вот и хочется узнать мнение экспертов возможно ли оптимизировать такой запрос для большого числа параметров?


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
37901



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |