left join right join inner join*

left outer join、right outer join 、inner outer join是sql里面用的不少的,因此须要深刻理解它的用法mysql

  1. a left b,若是a表的一条记录匹配中了b表的多条记录,那么最后会返回多条记录。
  2. a left b,若是a表的多条记录同时匹配中b表的一条记录,那么最后会返回a表中的多条记录,而且他们都是匹配中b表的那一条记录。
  3. a left b on condition,不管condition条件是什么,a表的记录都会存在,condition只是约束b表匹配a表的条件罢了,若是condition太严格,只会让b表一条记录都没匹配中,可是a表的记录一直都在。同时,condition能够是多个条件,条件之间用and链接。
  4. inner join的查询语句SELECT * FROM a INNER JOIN b ON a.aID =b.bID等同于如下SQL句: SELECT * FROM a,b WHERE a.aID = b.bID。注意不一样的数据库可能有些差别。
  5. 在hive中,on后面的条件操做符好像只能为等号,若是想加不等于的条件,能够后面再跟where条件。

超详细mysql left join,right join,inner join用法分析sql

相关文章
相关标签/搜索