В подзапросе q1 собираем информацию об интересующих нас объектах, далее используем его в ранее описанном запросе по склейке строк в одну.
select res
from (select replace(sys_connect_by_path(string_about_creation, '@'), '@') as res,
level
from (select string_about_creation,
ordr,
lag(ordr) over(order by ordr) as prev_ordr
from (select created,
to_char(created, 'dd.mm.yyyy hh24:mi:ss') ||
' создали ' || object_type || ' ' ||
object_name || '.' || chr(13) || chr(10) as string_about_creation,
row_number() over(order by created) ordr
from user_objects
where object_name like 'KK%') q1)
start with prev_ordr is null
connect by prev_ordr = prior ordr
order by level desc)
where rownum = 1;
Задача. Отчет о числе строк в таблицах.
Создать пустую таблицу KK_CNT_REPORT(table_name varchar2(30), cnt number).
Написать процедуру KK_FILL_CNT_REPORT(in_table_list in varchar), которая на входе получает список таблиц, разделенных запятыми, например, 'KK_TBL1,KK_TBL2,KK_TBL3', и заполняет таблицу KK_CNT_REPORT данными о количестве строк в этих таблицах.