a表 aid aname 
1    张三 
2    李四 b表 
bid  aid  bname 
没有数据 c 表 
cid  bid  cname 
没有数据 
SQLserver2000 用这个select a.*,b.*,c.* from a left join b on a.aid=b.aid left join c on c.bid=b.bid 
可以得到数据
但是在oracle9i里是不是不行啊?
各位说说看
如果oracle不支持left join  on  那么我该怎么实现呢?

解决方案 »

  1.   

    oracle 里支持left join on的,可能你写的不对
    不过oracle里用+号看得清楚
    select a.*,c.*
    from
    (
    select a.*,b.*
    from a,b
    where a.aid=b.aid(+)
    ) a,c
    where a.bid=c.bid(+)
      

  2.   

    left join是标准写法,支持的
      

  3.   

    select a.*,b.*,c.* from a,b,c where a.aid=b.aid and b.bid=c.bid;
      

  4.   

    9i支持 left join
    语法应该没有错误。从其他方面检查一下吧。