MySQL之左右连接的区别

花姐姐
发布: 2020-05-06 10:46:48
转载
5628 人浏览过

MySQL之左右连接的区别

MYSQL中可以通过内外键链接,将有关系的表中数据合并到一起进行条件筛选:

首先创建两个新表,数据如下:

student 表数据:1.png

score 表数据:

2.png3.png

可以看到students表中stu_id为16048008的记录对应score表没有数据;

1.当进行内连接时,系统会自动忽略两个表中对应不起来的数据:

-- 显示内连接所有数据:SELECT * FROM students st INNER JOIN score sc ON st.sid=sc.stu_id;
登录后复制

  数据太多,只截图最末尾的:4.png

  可以看到,数据只显示到16048007,16048008的并没有显示,所以内连接只显示所有有关联的数据.

2.左链接,显示关键词left左边表中的所有数据,右边表数据数据少了补NULL值,数据多了不显示;

-- 左外链接 leftSELECT * FROM students st LEFT JOIN score sc ON st.sid=sc.stu_id;
登录后复制

5.png

  可以看到,16048008在右边score表中没有数据,系统用NUll补齐,

SELECT * FROM score sc LEFT JOIN students st ON st.sid=sc.stu_id;
登录后复制

  上图是我们将students表和score表换了一下位置的运行结果,可以看出,本来右边表16048008记录,因为在左边表钟没有数据对应,所以被删除了,可以看出,左链接是以左边表中数据为参照,显示左边表中所有数据,右边表,只显示与左边表对应的数据,少了补NULl,多了删除;

  同理,右链接是以右边为参照,左边少了补NULL,多了删除,这里就不多说了;

  以上可以得出:

  1.内连接,显示两个表中有联系的所有数据;

  2.左链接,以左表为参照,显示所有数据;

  3.右链接,以右表为参照显示数据;

简简单单,不急不躁,每天充实而稳定的前行!

推荐学习:mysql教程

以上是MySQL之左右连接的区别的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:cnblogs.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!