--创建行类型
create or replace type row_type1 as object(k number, v varchar2(100));
--创建以行类型为row_type1的表类型table_type1
create or replace type table_type1 as table of row_type1;
--function
create or replace function fun1(vp varchar2)
return table_type1 pipelined as
v row_type1;
begin
for myrow in (select eei.id as k,eei.name as v from ets_emp_info eei ) loop
v := row_type1(myrow.k, myrow.v);
pipe row (v);
end loop;
return;
end;
--测试
select * from table(fun1('tt'));