Mitosan
Новичок
Скорость выполнения запроса (HELP)
Здравствуйте уважаемые !
В общем дело в следуюшем:
есть определенный массив скажем с номерами объявлений в количестве 9 штук
необходимо сделать выборку из трех таблиц:
table 1 - основная таблица с данными объявлений
table 2 - таблица со списком категорий
table 3 - таблица со справочниками
делаю это так
Результат: Все работает так как надо
Проблема в том, что запрос существенно увеличивает время исполнения скрипта.
При выводе 9 результатов время выполнения скрипта составляет - 6.467 сек и скрипт реально начинает тупить
Если закомментировать эти две строчки:
то время исполнения скрипта составляет 0.9 сек
скорость считал с помощью memory_get_usage
EXPLAIN запроса выводит
Плиз, помогите разобраться. Мож я что нибудь не так понимаю?
ЗЫ. (вдруг пригодится)
Apache/2.2.4 (Win32) mod_ssl/2.2.4 OpenSSL/0.9.8d PHP/5.2.4
MySQL5
Здравствуйте уважаемые !
В общем дело в следуюшем:
есть определенный массив скажем с номерами объявлений в количестве 9 штук
PHP:
$recs = array(111,222,333,444,555,666,777,888,999);
table 1 - основная таблица с данными объявлений
table 2 - таблица со списком категорий
table 3 - таблица со справочниками
делаю это так
PHP:
foreach($recs as $record)
{
// сам запрос
$query = "SELECT t1.*, t2.name2, t3.title AS curr FROM table1 t1, table2 t2, table3 t3 WHERE t1.id='{$record}' AND t2.id=t1.pid AND t3.id=t1.unit";
$result = mysql_query($query);
$item = mysql_fetch_row($result);
echo $item['name'].'<br/>'
}
Проблема в том, что запрос существенно увеличивает время исполнения скрипта.
При выводе 9 результатов время выполнения скрипта составляет - 6.467 сек и скрипт реально начинает тупить
Если закомментировать эти две строчки:
PHP:
$result = mysql_query($query);
$item = mysql_fetch_row($result);
скорость считал с помощью memory_get_usage
EXPLAIN запроса выводит
PHP:
'SIMPLE', 't1', 'const', 'PRIMARY', 'PRIMARY', '4', 'const', 1, ''
'SIMPLE', 't2', 'const', 'PRIMARY', 'PRIMARY', '4', 'const', 1, ''
'SIMPLE', 't3', 'const', 'PRIMARY', 'PRIMARY', '4', 'const', 1, 'Using index'
ЗЫ. (вдруг пригодится)
Apache/2.2.4 (Win32) mod_ssl/2.2.4 OpenSSL/0.9.8d PHP/5.2.4
MySQL5