|
|
|||||||||||||||||||||||||||||
|
pipelined-функции, первое знакомствоИсточник: orahome Петрелевич Сергей
В Oracle есть очень полезная возможность - способность функций возвращать таблицу данных, которую можно включать в другие выборки. Готовим типы данных:
Создаем функцию:
Открывается неявный курсор, извлекаются записи, из них создаются объекты типа TypeTestObject и помещаются в коллекцию. Вот как эту функцию можно использовать в SQL-запросах:
Часто в конкретной системе есть сложная логика, которая кочует из одного запроса/отчета в другой, такую логику сложно понимать, и, если требуется, изменять. Поэтому часто бывает целесообразно общие логические блоки вынести в отдельные библиотеки и использовать уже их, вместо "копипастного" клонирования. В этом деле хорошо помогают представления (view), но сложную логику в них не запихнуть, и тут уже работают nested table и pipelined-функции. Ссылки по теме
|
|