两个表做连接:表a:(4行)id 
—— 



4 表b:(3行) 
Name           Address 
—————————————— 
D                   sdf 
Wer               wrwr 
C                     sdfsf 需要显示的格式为
id             Name           Address 
—————————————————————— 
1               D               sdf 
2               Wer             wrwr 
3               C               sdfsf 

在id为4的行,Name和Address为NULL 这里两个表之间没有任何关系,希望能够将两个表的列并排显示,行数不对应用NULL来补

解决方案 »

  1.   

    select aa.id,bb.name,bb.address from 
    (select rownum r1,a.id from a) aa,
    (select rownum r2,b.* from b) bb
    where aa.r1=bb.r2(+)
      

  2.   

    樓上的兄弟太自信了
    事實證明上面的是錯的,ROWNUM是為例,不能識別
    SQL> select * from x
      2  /
     
            ID
    ----------
             1
             2
             3
             3
     
    SQL> select * from y;
     
    NAME       ADDRESS
    ---------- ---------------------
    C           sdfsf
    D          SDF
    WER        wrwr
     
    SQL> 
    SQL> select   x.id,y.name,y.address   from   (select rownum rn,id from x)  x,(select y.*,rownum rn from y)  y
      2  where x.rn=y.rn(+)
      3  /
     
            ID NAME       ADDRESS
    ---------- ---------- ---------------------
             1 C           sdfsf
             2 D          SDF
             3 WER        wrwr
             3            
     
    SQL>