select * from a,b where a.id = b.aid 
select * from a left join b on a.id= b.aid请问这两种有什么区别?

解决方案 »

  1.   

    第一个查询结果,两表全部匹配的的数据
    第二个查询结果,A表全部,B表匹配A表id的数据
      

  2.   

    第一是内连接可以改写为 join 连接,第二种是左连接,左连接以左表为主。
      

  3.   

    第一种按条件筛选A和B表两表的数据;
    第二种按条件筛选B表数据,A表数据全部查询出来。
      

  4.   

    第一种是“内连接”查出全部记录 取条件相同的记录a.id = b.aid  
    第二种是“左连接” 以左表为基础表 查询出记录 如:右表中不存在的记录,在左表中存在。
    则:查出来的集合使用到的右表字段为null
      

  5.   

    sql 内连接、外连接、自连接区别
    http://blog.sina.com.cn/s/blog_4c81e62301008nfb.html