Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
17.07.2003, 00:24
|
|||
---|---|---|---|
|
|||
поясните, а то совсем не понимаю что происходит |
|||
#18+
Есть 2 таблицы: region_streets ( region_id INT UNSIGNED NOT NULL, street_id INT UNSIGNED NOT NULL, PRIMARY KEY (region_id,street_id); И streets ( street_id INT UNSIGNED NOT NULL Auto_increment, town_id INT UNSIGNED NOT NULL, street_name varchar(128) NOT NULL, PRIMARY KEY (street_id) ); в обеих таблицах ~>2000 строк данных, Делаю запросы вида: 1) select count(*) from region_streets left join streets on (region_streets.street_id=streets.street_id) where town_id=300000; Результат: +----------+ | count(*) | +----------+ | 2118 | +----------+ 1 row in set (0.03 sec) 2) select count(*) from streets left join region_streets on (region_streets.street_id=streets.street_id) where town_id=300000; Результат: +----------+ | count(*) | +----------+ | 2118 | +----------+ 1 row in set (4.90 sec) То есть 2й запрос занимает много больше времени чем первый. Поясните пожалуйста, почему так происходит ? PS: убирание "where town_id=300000" на время не влияет Заранее благодарю ... |
|||
:
Нравится:
Не нравится:
|
|||
|
17.07.2003, 01:55
|
|||
---|---|---|---|
поясните, а то совсем не понимаю что происходит |
|||
#18+
Покажи explain обоих запросов... Хотя предварительно можно предположить, что такая беда из за того, что ты делаешь join по полю, который в индексе не стоит первым. Попробуй ради интереса сделай create index hren on region_streets(street_id); и попробуй еще раз свои запросы.. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/moderation_log.php?user_name=zelezniy]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
51ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
others: | 437ms |
total: | 605ms |
0 / 0 |