Вероятно трябва да започнете с ОБЯСНЕНИЕ НА ПЛАН .
След това редактирайте въпроса си и публикувайте SQL оператора и резултата от ОБЯСНЕНИЕ НА ПЛАН.
По-късно. . .
Няма да ви бъда много полезен по този въпрос. 269 реда, поне 29 SELECT, паралелни заявки, отдалечени бази данни, външни съединения (стар стил) и т.н.
Най-добрият съвет, който мога да ви дам, е
- получете повече информация от EXPLAIN PLAN и
- опростете проблема.
таблица с план има повече колони, отколкото обикновено се публикуват. Колоните ЦЕНА, КАРДИНАЛНОСТ, БАЙТОВЕ и ВРЕМЕ може да са полезни при приоритизирането на вашите усилия за настройка.
Имате 10 пълни сканирания на таблици в тази заявка. ("ПЪЛЕН ДОСТЪП ДО ТАБЛИЦАТА" в плана на заявката.) Това обикновено е лош знак; пълните сканирания на таблици често отнемат сравнително дълго време. Не е винаги лош знак. Пълното сканиране на малка таблица може да бъде по-бързо от сканирането на индекс.
Започнете, като получите изход EXPLAIN PLAN за всеки от 29 оператора SELECT във вашата заявка. Ако някой от тях покаже пълно сканиране на таблица, вероятно можете да подобрите тяхната производителност с подходящи индекси . (Oracle поддържа много различни видове индекси. Не пренебрегвайте възможностите за индекси с няколко колони.) Във всеки случай изходът на EXPLAIN PLAN ще ви помогне да идентифицирате най-бавния от 29 SELECT.