当前位置: 代码网 > it编程>数据库>Mysql > MySQL表的内外连接使用详解

MySQL表的内外连接使用详解

2026年01月13日 Mysql 我要评论
内连接内连接实际上就是利用where子句对两种表形成的笛卡尔积进行筛选,前面所说过的查询都是内连接,也是在开发过程中使用的最多的连接查询。select 字段 from 表1 inner join 表2

内连接

内连接实际上就是利用where子句对两种表形成的笛卡尔积进行筛选,前面所说过的查询都是内连接,也是在开发过程中使用的最多的连接查询。

select 字段 from 表1 inner join 表2 on 连接条件 and 其他条件;

inner join : 将两个表按照指定条件关联匹配,只返回两个表中满足连接条件的行。可简写为join

on : 用来指定join的关联条件为连接两个表的核心规则,也可附加筛选条件

显示smith的名字和部门名称

用上一篇的写法为

内连接的写法为

select ename,dname from emp inner join dept on emp.deptno=dept.deptno where ename='smith';
select ename,dname from emp inner join dept on emp.deptno=dept.deptno and ename='smith';

on后的条件形成笛卡尔积,where进一步筛选 这种写法会更清晰

外连接

左外连接

如果联合查询,左侧的表完全显示我们就说是左外连接

语法

select 字段名  from 表名1 left join 表名2 on 连接条件

四名同学,两名同学有成绩,left join 会优先考虑完整显示左侧的表,inner

查询所有学生成绩,学生没有成绩也要将学生的个人信息显示出来

右外连接

如果联合查询,右侧的表完全显示我们就说是右外连接

语法

select 字段 from 表名1 right join 表名2  on 连接条件;

显示所有成绩即使没有学生与之对应

将两个表互换位置就是左外连接,显示所有学生的成绩...

列出部门名称和这些部门的员工信息,同时列出没有员工的部门

优先显示部门表,根据 deptno来筛选

select * from dept left join emp on emp.deptno=dept.deptno;

到此这篇关于mysql表的内外连接使用详解的文章就介绍到这了,更多相关mysql表内外连接内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2026  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com