--创建行转列的函数
--调用函数
create or replace function rowToCol(QuerySql varchar2) return varchar2 as
begin
declare type cu_rtoc is ref cursor;
proscu cu_rtoc;
string_name varchar2(200);
row_cu product%rowtype;
begin
open proscu for QuerySql;
loop
fetch proscu into row_cu;
exit when proscu%notfound;
string_name:=string_name||row_cu.pname||',';
end loop;
return rtrim(string_name,',');--去除最后的','
end;
end rowToCol;
--调用函数
begin
declare querysql varchar2(100);
begin
querysql:='select * from product';
dbms_output.put_line(rowToCol(querysql));
end;
end;