第一种sql语句,主要是表写在一起的。
select * from a as dp, b as m where dp.id = m.q and dp.name='tomcas'这是属于 left join 还是 left outer join 还是 outer join 呢?第二种:
select * from a as dp left outer join b as m on dp.id = m.q and dp.name like '%军%';这种和第一种又有什么区别呢?谢谢。(这种查询结构明显跟第一种不一样)。outer join 到底有几种啊??

解决方案 »

  1.   

    第一种sql语句  不是外连接,是普通的联接,可以视为等同于 inner join
    第二种: 
    这是left join , left join = left outer joinouter join 到底有几种啊??
    理论上三种 LEFT OUTER, RIGHT OUTER, FULL OUTER,但大多数据库只有前两种http://dev.mysql.com/doc/refman/5.1/zh/sql-syntax.html#join
    13.2.7.1. JOIN语法
    MySQL支持以下JOIN语法。这些语法用于SELECT语句的table_references部分和多表DELETE和UPDATE语句:
      

  2.   

    1、是内连接;
    2、外连接,LEFT、RIGHT、FULL OUTER JOIN。