|
MySQL.RU - Webboard
Вернуться
Оптимизация и вложенные запросы (AS) 08/06/2005 - 14:30:22
Re: Оптимизация и кг, отжиг (Валентин) 08/06/2005 - 15:15:59
From: AS - 08/06/2005 - 14:30:22
Subject:Оптимизация и вложенные запросы
-----------------
Добрый день! Есть следующий запрос из PHP:
SELECT *
FROM books
WHERE
(books.cat1 IN (SELECT id_c FROM cattree WHERE(cat_left BETWEEN $cl AND $cr))) OR
(books.cat2 IN (SELECT id_c FROM cattree WHERE(cat_left BETWEEN $cl AND $cr))) OR
(books.cat3 IN (SELECT id_c FROM cattree WHERE(cat_left BETWEEN $cl AND $cr)))
В WHERE имеются три абсолютно одинаковых вложенных запроса, с результатами которого сравниваются три поля категорий (книги в данном проекте могут относиться не к одному, а к нескольким разделам)
Вопрос: можно ли обойти это убожество и написать более красивый запрос. Насколько я понял временная таблица горю не поможет, запрос таким почти и останется, но, может быть, временная таблица прибавит производительности? Или ничего и не стоит мудрить и MySQL все сам съоптимизирует и не будет делать три запроса вместо одного. Но в любом случае, хотелось бы запрос покрасивее...
[Это сообщение - спам!]
Последние сообщения из форума
Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL,
версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
22406
|
|