- 8/24/04 04:16 pm
-
Ja nu kādam kādreiz rodas vajadzība pēc SELECT no rezultātiem, ko atgriež PL/SQL funkcija, tad nu lūk risinājums, kuram uzdūros:
--papriekšu uztaisam jaunu datu tipu:
CREATE TYPE numset_t AS TABLE OF NUMBER;
/
--tagad taisam funkciju
CREATE FUNCTION f1(x number) RETURN numset_t PIPELINED IS
BEGIN
FOR i IN 1..x LOOP
PIPE ROW(i);
END LOOP;
RETURN;
END;
/
nu un lūk šāds select atgriezīs 3 rowus:
select * from table(f1(3));
un links, kur tas aprakstīts sīkāk:
https://cwisdb.cc.kuleuven.ac.be/ora10doc/appdev.101/b10807/12_tune.htm#i52932