创建两张测试表

SQL> create table t1 as
2    select 'one' as d1,
3    'two' as d2,
4    'three' as d3,
5    'four' as d4,
6    'five' as d5 from dual; 

SQL> create table t2(d varchar2(10), des varchar2(50);

转置

SQL> insert all
2    into t2(d, des) values('一', d1)
3    into t2(d, des) values('二', d2)
4    into t2(d, des) values('三', d3)
5    into t2(d, des) values('四', d4)
6    into t2(d, des) values('五', d5)
7    select d1, d2, d3, d4, d5 from t1;

类似

SQL> insert into t2(d, des)
2    select '一', d1 from t1 union all
3    select '二', d2 from t1 union all
4    select '三', d3 from t1 union all
5    select '四', d4 from t1 union all
6    select '五', d5 from t1;