有一条SQL,select A.*,B.* from A join B on A.id = B.a_id在那本新书《SQL必知必会》中,是这样分析的:在联结二个表时,你实际上做的是将第一个表中的每一行和第二个表中的每一行配对。这样的话我能懂,但如果是三个表联结或更多的表联结时,该怎样分析?

解决方案 »

  1.   

    如果是三个表联结或更多的表联结时,该怎样分析?先做两表join,其结果再和第三表做join。
      

  2.   

    为什么要必须Join呢,你可以这样
    select a.*,b.* from a,b where a.id=b.a_id
      

  3.   

    楼上 的,有种情况比如a表有的记录b表没有就选不出来了,所以用join.
      

  4.   

    to kinglht 你说的情况是out joinoracle里面可以用=(+)的方式