SQL学习(五)多表关联-join


  在实际工作中会用到多表联查,此时需要用到关键字JOIN

一、inner join(内连接)

  至少有一个匹配时返回行,只返回两个表中连接字段相等的行

  如:

  select * from ticket

  inner join job

  on ticket.id=job.t_id

  只查询出,ticket.id=job.t_id的数据

二、left join(左连接)

  即使右表中没有匹配,也从左表中返回所有的行

  如:

  select * from ticket

  left join job

  on ticket.id=job.t_id

  不管ticket.id是不是等于job.t_id,首先返回ticket中的所有数据;如果ticket.id=job.t_id时,返回相应的job数据;如果ticket.id!=job.t_id时,对应的job数据显示为null

三、right join(右连接)

  即使左表中没有匹配,也从右表中返回所有的行

  如:

  select * from ticket

  right join job

  on ticket.id=job.t_id

  不管ticket.id是不是等于job.t_id,首先返回job中的所有数据;如果ticket.id=job.t_id时返回相应的ticket数据;如果ticket.id!=job.t_id时,对应的ticket数据显示为null

四、full join(外连接)

  只要其中一个表中存在匹配,则返回行(返回两个表中的行)

  如:

  select * from ticket

  full join job

  on ticket.id=job.t_id

  不管ticket.id是不是等于job.t_id,首先返回ticketjob的所有数据;如果ticket.id=job.t_id时,会在相应的ticket数据后显示job数据;如果ticket.id!=job.t_id时,ticket数据和job数据分两行显示,其对应方的数据分别显示null


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM