Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Какой запрос быстрей? Объединенный или перекрестный?
 
 автор: tAleks   (21.09.2006 в 22:14)   письмо автору
 
 

Я вот тут сегодня "наколдовал", получилось 2 варианта, результат выдают одинаковый:

"SELECT 
                    mag_nmc.stock, 
                    name, 
                    colvo_osn, 
                    unit_osn,
                    pvp.price AS pvp,
                    pkl.price AS pkl
                FROM 
                    mag_nmc
                    LEFT JOIN mag_prices AS pvp ON pvp.stock = mag_nmc.stock AND pvp.id_price_type = 6
                    LEFT JOIN mag_prices AS pkl ON pkl.stock = mag_nmc.stock AND pkl.id_price_type = 1
                WHERE
                    mag_nmc.stock IN (SELECT stock_analogue FROM mag_nmc_analogues WHERE stock = ".$stock.")";


и такой

"SELECT 
                    mag_nmc.stock, 
                    name, 
                    colvo_osn, 
                    unit_osn,
                    pvp.price AS pvp,
                    pkl.price AS pkl
                FROM 
                    mag_nmc, mag_prices AS pvp, mag_prices AS pkl
                WHERE
                    mag_nmc.stock IN (SELECT stock_analogue FROM mag_nmc_analogues WHERE stock = ".$stock.")
                    AND pvp.stock = mag_nmc.stock AND pvp.id_price_type = 6
                    AND pkl.stock = mag_nmc.stock AND pkl.id_price_type = 1";


Вопрос: Какой из этих запросов будет шустрей работать? А то ведть один полюбому надо будет грохнуть.... хотелось бы оставить тот, который быстрей....

   
 
 автор: cheops   (22.09.2006 в 11:22)   письмо автору
 
   для: tAleks   (21.09.2006 в 22:14)
 

Если размер таблицы mag_prices не слишком большой, то скорость должна быть одинаковая, если большой, то первый запрос должен выполняться быстрее. Вы можете вывести запросы в окно браузера и выполнить в консольном клиенте mysql - он выдаст время выполнение каждого из запросов.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования