【SQL】左连接、右连接和全连接、内连接的区别


  身为一名软件测试人员,工作中遇到需要操作数据库的情况,太多了。在好几次面试后都遇到的一些问题,想着记录一下,方便日后复习,也整理一下自己的思路。

题目:

  简述一下连表查询时左右连接的区别。

叙述:

  左(外)连接(LEFT JOIN),以左表为基准,查询出左表所有的数据和右表中连接字段相等的记录,如果右表中没有对应数据,则在左表记录后显示为空(NULL).如果把两个表分别看成一个集合的话,则显示的结果为JOIN左边的集合。

  同理,右(外)连接(RIGHT JOIN )是以右表为基准,查询出右表所有的数据和左表中连接字段相等的记录,如果左表没有对应数据则在右表对应数据行显示为空(NULL).如果把两个表分别看成一个集合的话,则显示的结果为JOIN右边的集合。

  内连接(INNER JOIN )是查询出两个表对应的数据,如果把两个表分别看成一个集合的话,内连接的结果即为两个表的交集。

  全连接(FULL JOIN )将两个表的数据全部查出来,返回左右表中所有的记录和左右表中连接字段相等的记录,如果把两个表分别看成一个集合的话,全外连接的结果即为两个表的并集。

 

  PS:  

    其实,当时面试的时候,回答的不是很好,就想着记下来,也算是复习了,哈哈


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM