Если у меня есть простой запрос вроде:
OPEN cursor FOR
SELECT USER_ID FROM USER_TABLE WHERE USER_ID = V_SOME_USER;
это вернет записи в разных строках, но как я могу вернуть строки в следующем формате:
'userid1', 'userid2', 'userid3'.....'useridN'
Я хочу сделать это, потому что я хочу отправить это как parameter
другой хранимой процедуре ... Кроме того, каков предел того, насколько большим может быть string
при передаче в SP в качестве параметра
Что у меня так далеко:
l_str varchar2(32767) default null;
l_sep varchar2(10) default null;
l_sep1 varchar2(10) default null;
begin
for x in ( SELECT USER_ID FROM USER_TABLE WHERE USER_ID = V_SOME_USER ) loop
l_str := l_str || l_sep || x.b || l_sep;
l_sep := '''';
l_sep1 := ''',';
end loop;
Хотя это не дает ожидаемых результатов