如何将Oracle SQL查询的结果转换为列?

uth

我的查询输出如下。

在此处输入图片说明

但我需要结果采用以下格式。

在此处输入图片说明

怪物史莱克

输出可以实现如下-

建立:-

CREATE TABLE TAB1
(
  ID NUMBER,
  ATTRNAME VARCHAR2(1024),
  ATTRVALUE VARCHAR2(1024)
);


insert into tab1 values (1, 'Name', 'Mark');
insert into tab1 values (1, 'Email', '[email protected]');
insert into tab1 values (1, 'Phone num', '12234');

insert into tab1 values (2, 'Name', 'Julie');
insert into tab1 values (2, 'Email', '[email protected]');
insert into tab1 values (2, 'Phone num', '12234');

查询:

select * from (
  select * from tab1)
pivot(
  max(attrvalue) for attrname in ('Name', 'Email','Phone num')
  ) order by id;

结果:-

ID  'Name'  'Email' 'Phone num'
1   Mark    [email protected] 12234
2   Julie   [email protected] 12234

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章