left join right join inner join*

原创
2016/12/27 16:11
阅读数 125

left outer join、right outer join 、inner outer join是sql里面用的很多的,所以需要深入理解它的用法

  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用法分析

展开阅读全文
打赏
0
2 收藏
分享
加载中
更多评论
打赏
0 评论
2 收藏
0
分享
返回顶部
顶部