パイプライン関数で動的クエリを実行し、このクエリの結果を返したいと考えています。これを行うことは可能ですか?パイプライン関数は、テーブルのように動作するため、アプリケーションの適切なインターフェイスを実現するのに便利です。
関数:
CREATE OR REPLACE FUNCTION MyFunction(p_schema VARCHAR2) RETURN MyTableType Pipelined IS
v_query VARCHAR2(1000);
BEGIN
v_query := 'SELECT * FROM TABLE ('||p_schema||'.somepackage.SomeFunction)'; --SomeFunction is another pipelined function
EXECUTE IMMEDIATE v_query;
--Results of the v_query are compatible with MyTableType's row type. But how to return them from pipelined function?
END;