博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mysql 左连接 右连接 内链接
阅读量:6678 次
发布时间:2019-06-25

本文共 1041 字,大约阅读时间需要 3 分钟。

一般所说的左连接,右连接是指左外连接,右外连接。做个简单的测试你看吧。

先说左外连接和右外连接:
[TEST1@orcl#16-12月-11] SQL>select * from t1;
ID NAME
---------- --------------------
1 aaa
2 bbb
[TEST1@orcl#16-12月-11] SQL>select * from t2;
ID AGE
---------- ----------
1 20
3 30
左外连接:
[TEST1@orcl#16-12月-11] SQL>select * from t1 left join t2 on t1.id=t2.id;
ID NAME ID AGE
---------- -------------------- ---------- ----------
1 aaa 1 20
2 bbb
右外连接:
[TEST1@orcl#16-12月-11] SQL>select * from t1 right join t2 on t1.id=t2.id;
ID NAME ID AGE
---------- -------------------- ---------- ----------
1 aaa 1 20
3 30
从上面的显示你可以看出:左外连接是以左边的表为基准。通俗的讲,先将左边的表全部显示出来,然后右边的表id与左边表id相同的记录就“拼接”上去,比如说id为1的记录。如果没有匹配的id,比如说t1中id为2的t2中就没有。那边就以null显示。
右外连接过程正好相反。
再看内连接:
[TEST1@orcl#16-12月-11] SQL>select * from t1 inner join t2 on t1.id=t2.id;
ID NAME ID AGE
---------- -------------------- ---------- ----------
1 aaa 1 20
看到没有? 只有一条记录。内连接就是只取出符合过滤条件的记录 也就是t1.id=t2.id 那么符合t1.id=t2.id的记录只有id=1这一条,所以只显示一条。 不像外连接,是将你作为基准的表(左外连接就是左边表为基准,右外连接就是右边表为基准)的所有行都显示出来。

转载于:https://www.cnblogs.com/ccs-mxs/p/6888906.html

你可能感兴趣的文章
世界经济论坛报告:地缘经济局势日趋紧张将阻碍今年经济增长
查看>>
外交部:不允许外企以任何形式参与台“潜艇国造”项目
查看>>
为什么老外不愿意用MyBatis
查看>>
购物车【JavaWeb小项目简单版】
查看>>
五分钟 Styled-components 高级实用技巧
查看>>
Node.js: 一个刚刚够用的 HTTPS 服务器
查看>>
基于 Django REST Framework 实现业务 api 并自动文档化
查看>>
Android应用安全常见问题及解决方案
查看>>
面试题解 | 创建最大数
查看>>
蚂蚁金服SOFAMesh在多语言上的实践 | CNUTCon 实录
查看>>
读Zepto源码之Fx模块
查看>>
蚂蚁双11的这群筑梦师
查看>>
彻底搞懂HTTPS的加密机制
查看>>
使用jstack确认saiku报表刷新缓存无法访问问题
查看>>
2018,一个转行程序员的成长 | 掘金年度征文
查看>>
[Android]后端之路--整合SSM(Spring+SpringMVC+MyBatis)框架(2)
查看>>
深入理解虚拟机之类文件结构
查看>>
深入Spring Boot--使用Arthas排查应用404/401问题
查看>>
从路由原理出发,深入阅读理解react-router 4.0的源码
查看>>
0707 - iTips v0.0.1
查看>>