给我column_name和column_value

时间:2016-10-14 09:53:26

标签: sql oracle unpivot

你知道oracle中的函数或过程,它将允许我:

TABLE Clients
COLUMN   id, name, vlag


columnname  column_value                   
id          1          
name        Jon         
flag        M         


columnname  column_value                   
id          2          
name        Jessica         
flag        F     

2 个答案:

答案 0 :(得分:2)

with dat as (select '1' as id, 'Jon' as name, 'M' as vlag from dual union all
             select '2' as id, 'Jessica' as name, 'F' as vlag from dual)
select * from dat unpivot (column_value for column_name in (id, name, vlag));

但结果将与之前的答案非常相似(如果你添加rownum并用作键)。

答案 1 :(得分:0)

试试这个。但我会说这是无效的

select  'id' as column_name, id as column_value from table
union all
select 'name',name from table
union all
select 'flag',vlag from table