日期:2014-05-17  浏览次数:20677 次

求一个特别的oracle查询语句
表taba数据如下:
colA colB colC
a1 b1 1
a1 b2 2
a1 b3 4
a1 b4 7

我想用一个用一个sql查询查出如下数据:
colA colB colC
a1 b1 1
a1 b2 2
a1 null 3
a1 b3 4
a1 null 5
a1 null 6
a1 b4 7
a1 null 8

------解决方案--------------------
把该表分成两个:
A:
 calA calC
 a1 1
 a1 2
 a1 3
 a1 4
 a1 5
 a1 6
 a1 7
 a1 8
B:
 calB calC
 b1 1
 b2 2
 b3 4
 b4 7

原表即表A和表B的内联,
楼主的表可根据A和B的左连接生成,不知道满意否?

------解决方案--------------------
select nvl(t.cola,'a'),t.colb,lv from test t,(
select level as lv from dual connect by level<=8) b
where t.colc(+)=b.lv


可能你还有其他问题