en funktion, der kun afhænger af dens parametre, kan erklæres DETERMINISTISK. Resultaterne af denne funktion vil blive cachelagret i nogle tilfælde. Denne tråd på OTN-foraene viser, hvordan resultater af deterministiske funktioner bliver cachelagret inde i SQL-sætninger.
Fra og med 10gR2 bliver funktionsresultaterne ikke cachelagret på tværs af SQL-sætninger, og de cachelagres heller ikke i PL/SQL. Alligevel kan denne cache-funktion være nyttig, hvis du kalder en funktion i en SELECT, hvor den kan blive kaldt mange gange.
Jeg har ikke en 11gR2-instans tilgængelig lige nu, så jeg kan ikke teste RESULT_CACHE-funktionen, men har du overvejet at dele din funktion ved at stole på en fast dummy-tabel (en tabel, der f.eks. aldrig bliver opdateret)?