原始数据表结构如下
套餐编号 指令代码 指令类型(0代表订购,1代表退订)
1001 aaa 0
1001 bbb 1
1002 hhh 1
1002 iii 0
想得到的结果集如下
套餐编号 订购代码 退订代码
1001 aaa bbb
1002 iii hhh
------解决思路----------------------
select 套餐编号,
MAX(DECODE(指令类型,0,指令代码)) AS 订购代码,
MAX(DECODE(指令类型,1,指令代码)) AS 退订代码
from T
GROUP BY 套餐编号
------解决思路----------------------
SELECT *
FROM t1 pivot(max(t1.指令代码) for 指令类型 in('0' as 订购代码, '1' as 退订代码))