Читайте статьи и книги Стива Фюрштайна, он является одним из главных евангелистов PL / SQL.
Сосредоточьтесь на их структурах данных PL / SQL, таких как курсоры, ассоциативные массивы, таблицы (PL / SQL, а не SQL) и т. Д.
Одна вещь, которую нужно иметь в виду при поиске кода Oracle, вы столкнетесь со старым кодом намного больше, чем с новым кодом. Старайтесь учиться новому, а не старому.
Например, старый способ зацикливания запроса состоит в создании курсора и последующем цикле while над ним, пока он ничего не возвращает. Сейчас вы можете неявно создавать цикл, подобный этому:
FOR Test IN (Select Ct from TableCT) LOOP
Sum := Sum + Test.Ct;
END LOOP;
Для оптимизации запросов получите SQL Developer и запустите план объяснения. Это может занять некоторое время, чтобы понять, но это лучший способ, который я нашел. Кроме того, если вы еще не столкнулись с этим, предложение WITH творит чудеса для оптимизации запросов.