码农 + 关注

签名:熬夜写个代码吧

mysql中多表查询的几种连接方式浅析

发表于 1个月前   296次查看    0评论  3 赞

 最近在项目中用到连接查询,连接查询是关系数据中最主要的查询,包括内连接、外连接等。通过连接运算符可以实现多个表查询。接下来对这几种连接进行简单的赏析。

一、内连接(inner join on)

说明:组合两个表中的记录,返回关联字段相符的记录,也就是返回两个表的交集(阴影)部分

例:

select * from a_table a inner join b_table b on a.a_id = b.b_id;

QQ截图20181110111032.png


二、左外连接(left join on / left outer join on)

说明:left join 是left outer join的简写,左表(a_table)的记录将会全部表示出来,而右表(b_table)只会显示符合搜索条件的记录。右表记录不足的地方均为NULL。

例:

select * from a_table a left join b_table b on a.a_id = b.b_id;

QQ截图20181110110615.png


三、右外连接(right join on / right outer join on)

说明:right join是right outer join的简写,与左(外)连接相反,右(外)连接,左表(a_table)只会显示符合搜索条件的记录,而右表(b_table)的记录将会全部表示出来。左表记录不足的地方均为NULL。

例:

select * from a_table a right join b_table b on a.a_id = b.b_id;

QQ截图20181110110843.png


四、全连接(全外连接)

MySQL目前不支持此种方式,可以用其他方式替代解决。


3人已赞


本文由Fun言网 – 码农创作,转载请务必附上本文链接和出处,欢迎参与我们的付费投稿计划


你还没有登录,请先 登录注册!
文章评论0