oracle中如何将单行数据转化为单列数据

How to convert single row data into a single column in oracle

我有一个 table 喜欢:

column1  column2  column3  column4
A        B        C        D

想将其转换为:

Column
A
B
C
D

在 oracle 中不使用这个联合:

select column1 as Column from dual
union all
select column2 as Column from dual
union all
select column3 as Column from dual
union all
select column4 as Column from dual

你可以尝试使用unpivot

select v
from (
  SELECT 'A' column1,'B' column2,'C' column3,'D' column4  from dual
) t
unpivot
(
  v  for val in (column1,column2,column3,column4)
) u;

sqlfiddle:https://dbfiddle.uk/?rdbms=oracle_11.2&fiddle=b2105e1010b332ce5b702eba7bfa7f2d