mysql左连接和右连接的区别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql左连接和右连接的区别相关的知识,希望对你有一定的参考价值。

参考技术A

A.左连接(LEFT JOIN )

    ON字句连接条件,用于把2表中等值的记录连接在一起,但是不影响记录集的数量。若是表left_table中的某记录,无法在表right_table找到对应的记录,则此记录依然显示在记录集钟,只是表 right_table需要在查询显示的列的值用NULL替代;

    ON字句连接条件中表right_table.columnname=XXX用于控制right_table表是否有符合要求的列值还是用NULL替换的方式显示在查询列中,不影响记录集的数量;

    WHERE字句控制记录是否符合查询要求,不符合则过滤掉;

B.右连接(RIGHT JOIN)

    ON子句连接条件,用于把2表中等值的记录连接在一起,若是表right_table中的某记录,无法在表left_table找到对应的记录,则表 left_table需要在查询显示的列的值用NULL替代;

    ON子句连接条件中表left_table.columnname=XXX用于控制left_table表是否有符合要求的列值,还是用NULL替换的方式显示在查询列表中;

    WHERE字句控制记录是否符合查询要求,不符合则过滤掉;

本回答被提问者采纳

数据库中内连接和左连接和右连接的区别

假设有两张表:

   A表有四行四列数据;B表有两行两列数据;它们之间通过ID关联;假设它们之间的ID有两个相同;

  则:

    select * from A a left (outer)  join B  b  on a.bid=b.id;

显示为:A表的四行四列全部显示,而B表满足条件的两条数据则全部显示;

        A. 1                A.2                      A.3                 A.4                 B.1                       B.2

1       12                13                        23                   33                  tt                            dd

2       23                33                        11                  26                 null                        null

3       33                77                        25                 25                  aa                             cc        

4       66                 99                       35                 36                  null                         null

而右连接恰好与左连接是相反的;

对应内连接:就是只显示满足条件的数据,不显示不满足条件的数据;它与左连接和右连接的区别是它不显示不满足条件的数据;而左连接会显示左表不满足条件的数据而右表不满足条件的数据用null来表示;而右连接与左连接相同的;

  

      A. 1                A.2                      A.3                 A.4                 B.1                       B.2

1       12                13                      23                   33                  tt                            dd

3       33                77                      25                 25                  aa                            cc        

  


本文出自 “编程开发” 博客,请务必保留此出处http://w7984.blog.51cto.com/5147254/1852545

以上是关于mysql左连接和右连接的区别的主要内容,如果未能解决你的问题,请参考以下文章

mysql左连接和右连接的区别

左外连接与右外连接区别?

SQL中的左连接与右连接,内连接有啥区别

MySQL 的内连接、左连接、右连接有啥区别?

左连接和右连接:因为我可以反转操作数,实际区别是啥?

左外连接和右外连接的区别