比如 'select tablea.field1,tableb.field2 from tablea,tableb'
本来tablea中是有若干条记录的,但当我把tableb的记录全删掉后,上面的SQL查出的是没有任何记录,请问如何解决?

解决方案 »

  1.   

    一般用左外连接
    'select tablea.field1,tableb.field2 from tablea Left outer join tableb on tablea.id = tableb.id '
      

  2.   

    右外连接
    'select tablea.field1,tableb.field2 from tablea right outer join tableb on tablea.id = tableb.id '全外连接(不常用)
    'select tablea.field1,tableb.field2 from tablea full outer join tableb on tablea.id = tableb.id '
      

  3.   

    inner join内部合并只会列出存在于两个表格内的数据
    outer join外部合并会列出只存在于一个表格内的数据
    比如:
    table1 left outer join table2 意思是:table1和table2作外部合并,table1中的每一笔数据都会被选取出来,不管是否在table2中找得到相匹配的数据,合并的条件用on而不是用where同理table1 right outer join table2 意思是:table1和table2作外部合并,table2中的每一笔数据都会被选取出来,不管是否在table1中找得到相匹配的数据