17,082
社区成员
发帖
与我相关
我的任务
分享
create or replace procedure p1 is
Cursor cursor is select c_v from t_b order by c_v;
sqlstr varchar2(4000);
begin
for c_name in cursor loop
begin
sqlstr := sqlstr + ' select c_v,p_n,(select '||c_name.c_v||' from t_a where t_b.c_v = '''||c_name.c_v||''') c1 from t_b where c_v = '''||c_name.c_v||''' union all ';
end;
end loop;
--DBMS_OUTPUT.PUT_LINE(sqlstr); --打印sql
EXECUTE IMMEDIATE (sqlstr); --执行sql
end p1;