Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / join - тормозит!!! / 13 сообщений из 13, страница 1 из 1
17.12.2002, 18:54
    #32080725
[i] AndRew
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
join - тормозит!!!
обычый select from ТаблицаA a join ТаблицаБ б on а.поле1 = б.поле2 - работает замечательно (0,09 сек).
Но стоит только добавить в конце order by поле3 asc - начинаются дикие тормоза :(((30,0 сек)
В чём дело-то? Вроде индексы все есть...
...
Рейтинг: 0 / 0
17.12.2002, 19:01
    #32080728
MaxU
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
join - тормозит!!!
"query plan" в студию!
...
Рейтинг: 0 / 0
17.12.2002, 19:06
    #32080734
[i] AndRew
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
join - тормозит!!!
не понял...
...
Рейтинг: 0 / 0
17.12.2002, 19:09
    #32080736
.dba
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
join - тормозит!!!
order by добавляет операцию сортировки. Если она производится на диске, то естественно все замедляется. Если есть возможность, то надо увеличить sort_area_size. Если нет, то настраивать дисковые сортировки.
...
Рейтинг: 0 / 0
17.12.2002, 19:14
    #32080738
MaxU
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
join - тормозит!!!
в "sqlplus"е
SQL> SET AUTOTRACE TRACEONLY
SQL> your query

сюда выложить то, что выдал SQLPLUS
...
Рейтинг: 0 / 0
17.12.2002, 19:17
    #32080739
[i] AndRew
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
join - тормозит!!!
Да, order by сортирует. Но почему select from Таблица1 order by - не тормозит, select join (без сортировки) - не тормозит, а select join order by - 30 сек???
...
Рейтинг: 0 / 0
17.12.2002, 19:23
    #32080743
.dba
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
join - тормозит!!!
>Да, order by сортирует. Но почему select from Таблица1 order by - не
>тормозит, select join (без сортировки) - не тормозит, а select join order by -
>30 сек???

Наиболее вероятная причина, что вы соединяете таблицы не 1:1, а 1:многим. Поэтому результат содержит больше строк для сортировки, чем одна таблица.
...
Рейтинг: 0 / 0
17.12.2002, 19:29
    #32080747
[i] AndRew
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
join - тормозит!!!
> 1:1, 1:многим - а как это выглядит в SQL???
Я просто даже не представляю, как заставить Oracle соединять именно 1:1
...
Рейтинг: 0 / 0
17.12.2002, 19:42
    #32080755
.dba
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
join - тормозит!!!
хм, я не советовал соединять 1:1, а просто объяснил вам причину. Приведите в конце концов запрос и план выполнения, как вам MaxU советовал, тогда сможете рассчитывать на помощь.
...
Рейтинг: 0 / 0
17.12.2002, 19:47
    #32080759
[i] AndRew
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
join - тормозит!!!
Ура!!! я сам уже догнал!!!
Всё дело в том, что сортировать надо не результат Joinа, а исходную таблицу, которую потом и join-ить со второй!!!
Но всё равно спасибо, за сочуствие ...
...
Рейтинг: 0 / 0
18.12.2002, 01:14
    #32080829
killed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
join - тормозит!!!
А план так и не привел....
...
Рейтинг: 0 / 0
18.12.2002, 15:19
    #32081170
.dba
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
join - тормозит!!!
кроме того такое решение (сортировка перед join) может привести к некорректным результатам запроса.
...
Рейтинг: 0 / 0
18.12.2002, 17:22
    #32081259
RifNik
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
join - тормозит!!!
AndRew

"...Всё дело в том, что сортировать надо не результат Joinа, а исходную таблицу, которую потом и join-ить со второй!!! ... "

Вообще-то это ошибочный подход к решению проблемы: делать что-то, не понимая первопричины возникшей ситуации...
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / join - тормозит!!! / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]