在这里,我与一些PLSQL再次去..PLSQL返回值
我想知道,如果有什么办法,我可以用这样一个选择以下功能,而不必把它变成一个函数或过程(所以我可以从包含它的脚本中看到代码)。
的代码将是这样的:
DECLARE
outpt VARCHAR2(1000) := '';
flow_rI VARCHAR2(50);
CURSOR flow_r IS
select flow_run_id
from table
where CREATED_DATE < sysdate - 32
and rownum < 10
order by 1 desc;
BEGIN
OPEN flow_r;
LOOP
FETCH flow_r INTO flow_rI;
EXIT WHEN flow_r%notfound;
BEGIN
outpt := outpt || ',' || flow_rI;
EXCEPTION
WHEN no_data_found THEN
dbms_output.Put_line(outpt);
END;
END LOOP;
dbms_output.Put_line(outpt);
outpt := '';
CLOSE flow_r;
END;
的想法很简单,我只是想从我的table
获得一系列代码,但具有结果格式化像"1234,2434,424,45,767,43"
类的事情,而不是表结果来自查询。它将在后面的代码中用于各种目的,包括其他查询,我可以简单地执行in ([variable with that string])
。
事情是使用dbms_output.Put_line(outpt);
,我无法从我的应用程序层访问它,似乎在plsql中我不能使用return
而不将它变成函数。
有没有人有想法?它不需要像这样的PlSql,只要我可以在脚本中拥有整个代码即可。
谢谢!
f。
ps .:是的,我知道我有一个剩余的“,”在字符串的开头-_- – filippo 2010-10-14 14:18:43