преобразование строк в столбец в Oracle SQL - PullRequest
0 голосов
/ 25 июня 2018

Привет, я хочу преобразовать столбец в строки.Может кто-нибудь, пожалуйста, скажите мне, как я могу это сделать.

Ввод: -

id name
10 shruti
20 Wipro

Вывод должен быть

id   10     20
name shruti wipro

Обратите внимание, что может быть n количество столбцов,Какой самый эффективный способ сделать это?

1 Ответ

0 голосов
/ 25 июня 2018
declare
sqlqry clob;
cols clob;
begin
 select String_agg('''' || id || ''' as "' || id || '"', ',') 
 into   cols
 from   (select distinct id from your_table);


 sqlqry :=
  '      
  select * from
 (
  select *
  from your_table
 )
 pivot
(
max(name) for id in (' || cols  || ')
 )';

execute immediate sqlqry;
end;
/
...