Mysql有很多种连接方式,其中有两大主要连接方式:内连接和外连接,其中外连接又可以分为左外连接和右外连接;
对于这三种连接方式,如何判断何时使用一直困扰着我,这里就做一下自己的总结:
1、内连接:INNER JOIN,通常用来连接两个表中都存在的列值,在数学上可以理解为两个数的交集,即共同拥有的部分;
例如:student(id,name,age,sex,score),teacher(id,name,age,sex,salary)
测试语句:
SELECT * FROM student s INNER JOIN teacher t ;
测试结果:
2、外连接:
左连接:LEFT JOIN,会将语句左边的表中的所有记录全部表示出来,而右表只会显示符合搜索条件的记录,如果左表的记录右表不存在,则以NULL来填充;

例如:student(id,name,age,sex,score),teacher(id,name,age,sex,salary)
测试语句:SELECT * FROM student s LEFT JOIN teacher t on s.id = t.id
测试结果:

右连接:RIGHT JOIN,会将语句右边的表中的所有记录全部表示出来,而左表只会显示符合搜索条件的记录,如果右表的记录左表不存在,则以NULL来填充;
例如:student(id,name,age,sex,score),teacher(id,name,age,sex,salary)
测试语句:SELECT * FROM student s RIght JOIN teacher t on s.id = t.id
测试结果:

由此可见,内连接的区别相当于数学中的交集,外连接的左右区分为:左连接为左全查右,右连接为右全查左!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/12554.html