|
from ( select name1 from tableA ) a, ( select name2 from tableB ) b 这是一个简化的例子,a的结果和b的结果没有关系,只想简单的组合成一个结果集, 现在的问题是,如果b中没有结果的话,最后就没有结果。 应该要做一个外连接,但是不知道怎么做。 求教 |
|
|
|
建议你还是在工作中学习
|
|
|
既然 “a的结果和b的结果没有关系,只想简单的组合成一个结果集”,
那用union all是否可以满足你的要求呢? |
|
|
select a.name1,b.name2
from ( select rownum id1,name1 from tableA ) a, ( select rownum id2,name2 from tableB ) b where a.id1=b.id2(+); |
|
|
我建议你看看下面的帖子,我想应该差不多吧
http://expert.csdn.net/Expert/TopicView1.asp?id=2291442 |
|
|
select * from tableA
union all select * from tableB; |
|
|
bzszp(SongZip)
你给的答案是有前提条件的,必须表tableAr 中的记录数多于tableB中方可 这个问题在上面给出的帖子里面有详细的解答 |
|
|
对
|
|
|
select max(decode(rm,rownum,name1)) name1,max(decode(rm,rownum,name2)) from
(select name1,null name2,rownum rm from tablea union all select null,name2,rownum rm from tableb) group by rm |
|
select name1 from tableA
union all select name2 from tableB |
|
|