SearchEngines.bg

Това е примерно съобщение за гост. Регистрирайте безплатен акаунт днес, за да станете потребител на SearchEngines.bg! След като влезете, ще можете да участвате в този сайт, като добавите свои собствени теми и публикации, както и да се свържете с други членове чрез вашата лична входяща кутия! Благодарим ви!

Проблем с бавна заявка в MySQL поради where

fenixsz

New member
Здравейте,

Имам проблем с една бавна заявка. Имам три основни таблици.

- main
- fuel
- depr

Селектнал съм различни филдове, но те не влияят.

SELECT
......., ..,...
FROM
((`main`
LEFT JOIN `depr` ON ((`main`.`modelid` = `depr`.`modelid`)))
LEFT JOIN `fuel` ON ((`fuel`.`fueltypeid` = `main`.`fueltypeid`)))
WHERE
((`main`.`countryid` = `fuel`.`countryid`) AND (`main`.`currencyid` = `fuel`.`currencyid`)) AND ((`main`.`ages_car_bought` > `depr`.`age_from`) AND (`main`.`ages_car_bought` <= `depr`.`age_to`))

В тази формация я зарежда за 15 секунди!

Ако махна в where клаузата някоя от допълнителните таблици, заявката зарежда за 0.02 или 0.05 сек. Говоря, ако ги направя така:

WHERE
((`main`.`ages_car_bought` > `depr`.`age_from`) AND (`main`.`ages_car_bought` <= `depr`.`age_to`))

или


WHERE
((`main`.`countryid` = `fuel`.`countryid`) AND (`main`.`currencyid` = `fuel`.`currencyid`))
 
Re: Проблем с бавна заявка в MySQL поради where

Индекси на колоните, по които сравняваш имаш ли?

Уж ги бях оправил, но проблемът беше наистина в Index-ираните колони.

Мерси!
 

Горе