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

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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,⾸先返回ticket和job的所有数据;如果ticket.id=job.t_id时,会在相应的ticket数据后显⽰job数据;如果ticket.id!=job.t_id时,ticket数据和job数据分两⾏显⽰,其对应⽅的数据分别显⽰null。

相关文档
最新文档