![]() |
Запрос исполняется очень долго, а вроде бы не должен
Добрый всем день!
Посылаю в MySQL запрос: Код:
Select id from CnPODWords where ID in (Select ID from CnPODWords group by word having count(word)>15) Код:
Select ID from CnPODWords group by word having count(word)>15 В таблице CnPODWords около 13000 строк. Почему первый запрос исполняется так долго? В чем может быть проблема? |
1. вроде бы нельзя одну таблицу юзать в запросе и подзапросе
http://dev.mysql.com/doc/refman/5.5/en/subqueries.html 2. подзапросы в IN плохо оптимизируются http://dev.mysql.com/doc/refman/5.5/...trictions.html |
Цитата:
ИМХО, лучше получить первым запросом массив, а потом через цикл foreach() или mysql_fetch_array обработать значения. |
Цитата:
Цитата:
Долго выполняетса - воспользуйся командой EXPLAIN EXPLAIN Select id from CnPODWords where ID in (Select ID from CnPODWords group by word having count(word)>15) Это даст возможность проанализировать запрос и понять более детально, где собака зарыта |
Время: 10:44. |
Время: 10:44.
© OSzone.net 2001-