Я плохо знаком с понятием Конвейерных Функций. У меня есть некоторые вопросы относительно
С точки зрения Базы данных:
Спасибо.
Цитата из «Спроси Тома Оракула»:
конвейерные функции - это просто «код, который вы можете представить как таблица базы данных»
конвейерные функции дают вам (удивительно для меня) возможность
выбирать * из PLSQL_FUNCTION;
в любое время, когда вы думаете, что можете его использовать - чтобы выбрать * из функции, вместо таблицы, она может быть «полезным».
Что касается преимуществ: большое преимущество использования конвейерной функции состоит в том, что ваша функция может возвращать строки одну за другой, в отличие от построения всего набора результатов в памяти целиком перед его возвратом.
Вышеупомянутое дает очевидную оптимизацию - экономию памяти за счет чего-то, что в противном случае возвращало бы большой набор результатов.
Достаточно интересный пример использования конвейерных функций здесь
Что кажется хорошим их использованием, так это ETL (извлечение / преобразование / загрузка) - , например, см. Здесь