加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL连接查询INNER JOIN、LEFT JOIN、RIGHT JOIN

发布时间:2020-12-12 02:21:27 所属栏目:MySql教程 来源:网络整理
导读:? 一、内连接(INNER JOIN) 获取两个表中字段匹配关系的记录,需要两个表都满足条件的数据才会返回。 如下图阴影部分所示区域。 ? 实例: 有一张表table_a,数据如下: 表table_b,数据如下: 内连接SQL(也可以省略INNER,直接用JOIN): SELECT a.aid,a.a

?

一、内连接(INNER JOIN)

获取两个表中字段匹配关系的记录,需要两个表都满足条件的数据才会返回。
如下图阴影部分所示区域。

?

实例:
有一张表table_a,数据如下:

表table_b,数据如下:

内连接SQL(也可以省略INNER,直接用JOIN):

SELECT a.aid,a.aname,b.bid,b.bname FROM table_a AS a INNER JOIN table_b AS b ON a.aid = b.bid;

  

?

二、左连接(LEFT JOIN)

左表为主表,获取左表的所有记录,即使右表没有对应匹配的记录,右表没有匹配的记录字段会返回null,如下图阴影部分所示区域。

?

左连接SQL:

SELECT a.aid,b.bname FROM table_a AS a LEFT JOIN table_b AS b ON a.aid = b.bid;

  

?

三、右连接(RIGHT JOIN)

右连接和左连接正好相反,右连接以右表为主表,用于获取右表所有记录,即使左表没有对应匹配的记录,左表没有匹配的记录字段会返回null,如下图阴影部分所示区域。

右连接SQL:

SELECT a.aid,b.bname FROM table_a AS a RIGHT JOIN table_b AS b ON a.aid = b.bid;

  

?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读