Мне нужно развернуть данные clob в несколько столбцов, в основном, я хочу преобразовать строки данных clob в столбцы.
create table staff (
name varchar2(200),
month varchar2(20),
staff_names clob);
insert into staff values ('Vijay','Jan','staff_name_1');
insert into staff values ('Vijay','Jan','staff_name_2');
insert into staff values ('Vijay','Jan','staff_name_3');
insert into staff values ('Vijay','Jan','staff_name_4');
insert into staff values ('Vijay','Jan','staff_name_5');
insert into staff values ('Vijay','Jan','staff_name_6');
insert into staff values ('Vijay','Jan','staff_name_7');
insert into staff values ('Vijay','Jan','staff_name_8');
insert into staff values ('Vijay','Jan','staff_name_9');
insert into staff values ('Vijay','Jan','staff_name_10');
insert into staff values ('Vijay','Jan','staff_name_11');
insert into staff values ('Vijay','Jan','staff_name_12');
insert into staff values ('Vijay','Jan','staff_name_13');
...
insert into staff values ('Vijay','May','staff_name_13');
select name, month, wm_concat(staff_name) from staff group by name, month;
и вывод
Here numbers is (56, 39, 70, 90, 52)- total number of staff names concatenated.
I want to see all the staff names for each month, working under each manager alias name
Note: Here i am showing single manager 'Vijay'
select
name,
case when month='Jan' then all_names
end as Jan,
case when month='Feb' then all_names
end as Feb,
case when month='Mar' then all_names
end as Mar,
case when month='Apr' then all_names
end as Apr,
case when month='May' then all_names
end as May
from
(select name, month, wm_concat(staff_name) as all_names from staff group by name, month);
Output of my select statement is coming like this
but my expected output should be like this
введите описание изображения здесь
Если речь идет о числах, я могу использовать Max / Count соответственно. Здесь я ищу нечисловые c данные. Я также пробовал pivot, но поскольку у меня есть данные clob в столбце staff_name, я также не могу использовать pivot и decode. Потому что оба имеют ограничение в 4000 символов. Я открыт для любых предложений.