5
Mam funkcji Oracle PLSQL, która akceptuje tablicy:Przełęcz SELECT Oracle PLSQL
CREATE OR REPLACE FUNCTION CM.give_me_an_arrays (p_array IN num_array)
RETURN VARCHAR2
IS
x VARCHAR2 (512);
BEGIN
x := '';
FOR i IN 1 .. p_array.COUNT
LOOP
DBMS_OUTPUT.put_line (p_array (i));
END LOOP;
RETURN x;
END;
/
chcę, aby to zrobić:
select CM.give_me_an_arrays(select COM.COM_ID
from CM.XLP_SE_COMPONENT com
where rownum < 10)
from dual
jakieś pomysły? Z góry dzięki.
Czy istnieje powód, dla którego funkcja musi akceptować tablicę? Czy może zaakceptować kursor? Byłoby to na ogół bardziej sensowne, jeśli chcesz przekazać wynik instrukcji SELECT. Jeśli bierzesz wyniki zapytania, które zwraca 10 wierszy i generuje pojedynczy wynik zagregowany, czy na pewno nie chcesz zapisać niestandardowej funkcji agregującej? –