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

测试结果:

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

技术
下载桌面版
GitHub
Gitee
SourceForge
百度网盘(提取码:draw)
云服务器优惠
华为云优惠券
腾讯云优惠券
阿里云优惠券
Vultr优惠券
站点信息
问题反馈
邮箱:[email protected]
吐槽一下
QQ群:766591547
关注微信