Oracle
 sql >> Database >  >> RDS >> Oracle

Database:funzioni pipeline

Per citare da "Chiedi a Tom Oracle":

le funzioni pipeline sono semplicemente "codice che puoi fingere sia una tabella di database"

le funzioni pipeline ti danno la (incredibile per me) capacità di

select * from PLSQL_FUNCTION;

ogni volta che pensi di poterlo usare -- per selezionare * da una funzione, invece di una tabella, potrebbe essere "utile".

Per quanto riguarda i vantaggi:un grande vantaggio dell'utilizzo di una funzione Pipeline è che la tua funzione può restituire le righe una per una invece di creare l'intero set di risultati in memoria nel suo insieme prima di restituirlo.

Quanto sopra fornisce l'ovvia ottimizzazione:risparmio di memoria da qualcosa che altrimenti restituirebbe un grande set di risultati.

Un esempio abbastanza interessante dell'utilizzo di funzioni pipeline è qui

Quello che sembra essere un buon uso è ETL (extract/transform/load) - per esempio vedi qui