SQL连接,三表连接
1.外连接和内连接
内连接(inner join):假设A和B表进行连接,使用内连接的话,凡是A表和B表能够匹配上的记录查询出来,这就是内连接。AB两张表没有主副之分,两张表是平等的。
外连接:假设A和B表进行连接,使用外连接的话,AB两张表中有一张表是主表,一张表是副表,主要查询主表中的数据,捎带着查询副表,当副表中的数据没有和主表中的数据匹配上,副表自动模拟出NULL与之匹配。
外连接的分类
- 左外连接(left join):表示左边的这张表是主表。
- 右外连接(right join):表示右边的这张表是主表。
内连接与外连接的区别
- 外连接:主表的数据无条件的全部查询出来
- 内连接:按匹配记录查询,
- sql中直接写join,默认为inner join
- 内连接不会展示不匹配的数据,外连接不匹配的数据会展示null,注意有些sql是需求查询全部数据,需要查出null的数据进行处理,不要直接默认使用inner
案例1:三张表怎么连接查询?找出每一个员工的部门名称以及工资等级。
点击查看代码
select
e.ename,d.DNAME,s.GRADE
from
EMP e
left join
DEPT d on e.deptno=d.DEPTNO
left join
SALGRADE s on e.sal
between
s.LOSAL and s.HISAL
参考链接:https://blog.csdn.net/qq_34184505/article/details/118890234
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~