Как заменить SELECT с параметрами функцией или представлением?

Badger_778
Дата: 20.12.2012 18:31:17
Господа, посоветуйте чайнику.

Есть таблица T. Есть очень длинный и сложный запрос типа SELECT c несколькими параметрами P1,...,PN, возвращающий набор записей типа T%ROWTYPE. Надо заменить его либо представлением V, либо табличной функцией F, чтобы можно было выполнять более короткий запрос: select * from V или select * from TABLE(F(P1,...,PN)).

Представление не создается из-за наличия параметров. Функция не получается потому, что не знаю как задать тип ее значений.
Явно перечислять все поля из T%ROWTYPE не хочется, так как набор этих полей иногда меняется, а
CREATE TYPE T_rowtype AS TABLE OF T%ROWTYPE
не проходит. Есть не очень сложное решение?
AlexFF__|
Дата: 20.12.2012 19:01:22
Badger_778,
Поищи по слову pipelined
orawish
Дата: 20.12.2012 19:07:44
да и вью с параметрами - не проблема (а баян :)
через контексты, например