数据库表:
blog表:
user表:
左连接:
以左表为主表,查询出满足条件的内容。查询到的内容是左表全部的内容,和右表满足要求的内容。可能会出行右表内容为为空的可能。
select b.id,b.title,u.name from blog b left join user u on u.id=b.user_id
查询结果:
右连接:
以右表为主表,查询出满足条件的内容。查询到的内容是右表全部的内容,和左表满足要求的内容。可能会出行左表内容为为空的可能。左连接和右连接是相反的情况,调换表的位置,就相当于调换了表的连接方向
select b.id,b.title,u.name from blog b right join user u on u.id=b.user_id
查询结果:
内连接:
查询到的数据是两个表中都存在的数据,不存在一方为空的情况。两个表的位置不影响查询。
select b.id,b.title,u.name from user u inner join blog b on u.id=b.user_id
查询结果:
默认连接:
当不定义连接方向时,默认连接就是内连接。
select b.id,b.title,u.name from blog b join user u on u.id=b.user_id
查询结果: