Qualquer mudança de um idioma para outro envolverá uma sobrecarga (pode ser pequena, mas ainda estará lá). Se estiver em um loop, será acentuado.
Mantenha-o simples e, se você puder manter o PL/SQL, faça isso.
Tom Kyte (vice-presidente e guru da Oracle Corporation) tem um mantra que parece apropriado repetir aqui:
(Referência:http://tkyte.blogspot.com/2006/10/slow-by-slow.html)
- Você deve fazer isso em uma única instrução SQL, se possível.
- Se você não puder fazer isso em uma única instrução SQL, faça-o em PL/SQL.
- Se você não conseguir fazer isso em PL/SQL, tente um procedimento armazenado Java.
- Se você não puder fazer isso em Java, faça-o em um procedimento externo C.
- Se você não pode fazer isso em uma rotina externa C, você pode querer pensar seriamente sobre por que você precisa fazer isso…