时间: 2020-09-4|tag:51次围观|0 条评论

 

一、内连接(INNER JOIN)

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

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

 

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

MySQL连接查询INNER JOIN、LEFT JOIN、RIGHT JOIN插图1

表table_b,数据如下:

MySQL连接查询INNER JOIN、LEFT JOIN、RIGHT JOIN插图2

内连接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;

  MySQL连接查询INNER JOIN、LEFT JOIN、RIGHT JOIN插图3

 

二、左连接(LEFT JOIN)

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

MySQL连接查询INNER JOIN、LEFT JOIN、RIGHT JOIN插图4

 

左连接SQL:

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

  MySQL连接查询INNER JOIN、LEFT JOIN、RIGHT JOIN插图5

 

三、右连接(RIGHT JOIN)

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

MySQL连接查询INNER JOIN、LEFT JOIN、RIGHT JOIN插图6

右连接SQL:

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

  MySQL连接查询INNER JOIN、LEFT JOIN、RIGHT JOIN插图7

 

文章转载于:https://www.cnblogs.com/woods1815/p/12818568.html

原著是一个有趣的人,若有侵权,请通知删除

本博客所有文章如无特别注明均为原创。
复制或转载请以超链接形式注明转自起风了,原文地址《MySQL连接查询INNER JOIN、LEFT JOIN、RIGHT JOIN
   

还没有人抢沙发呢~