news 2026/2/2 20:49:56

MySQL内连和外连

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
MySQL内连和外连

1. 内连接

  • 内连接实际上就是利用where子句对两种表形成的笛卡儿积进行筛选
  • 只写JOIN ... ON等价于INNER JOIN ... ON(内连接)

语法

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

备注:前面学习的都是内连接

案例:显示SMITH的名字和部门名称

-- 用前面的写法 mysql> select ename, dname from emp, dept -> where emp.deptno=dept.deptno and -> ename='SMITH'; +-------+----------+ | ename | dname | +-------+----------+ | smith | research | +-------+----------+ 1 row in set (0.00 sec) -- 用标准的内连接写法 mysql> select ename, dname from emp inner join dept on -> emp.deptno=dept.deptno and -> ename='SMITH';

2. 外连接

外连接分为左外连接和右外连接

2.1 左外连接

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

语法

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

案例:查询所有学生的成绩,如果这个学生没有成绩,也要将学生的个人信息显示出来

-- 建两张表 create table stu (id int, name varchar(30)); -- 学生表 insert into stu values(1,'jack'),(2,'tom'),(3,'kity'),(4,'nono'); create table exam (id int, grade int); -- 成绩表 insert into exam values(1, 56),(2,76),(11, 8); -- 当左边表和右边表没有匹配时,也会显示左边表的数据 mysql> select * from stu left join exam on stu.id=exam.id; +------+------+------+-------+ | id | name | id | grade | +------+------+------+-------+ | 1 | jack | 1 | 56 | | 2 | tom | 2 | 76 | | 3 | kity | NULL | NULL | | 4 | nono | NULL | NULL | +------+------+------+-------+

2.2 右外连接

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

语法:

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

案例: 对stu表和exam表联合查询,把所有的成绩都显示出来,即使这个成绩没有学生与它对应,也要显示出来

mysql> select * from stu right join exam on stu.id=exam.id; +------+------+------+-------+ | id | name | id | grade | +------+------+------+-------+ | 1 | jack | 1 | 56 | | 2 | tom | 2 | 76 | | NULL | NULL | 11 | 8 | +------+------+------+-------+
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/1 0:17:19

商汤发布如影营销智能体,五大智能体全链协同打造直播电商增长飞轮

近年来,直播电商迈入发展快车道。预计2025年,中国直播电商市场规模将突破6万亿。直播电商爆发增长的背后,离不开主播、场控、直播运营、店铺运营、投流、内容制作等多种岗位紧密配合。然而,随着人力效率逐步见顶,运营成…

作者头像 李华
网站建设 2026/1/31 1:37:20

Flutter:开启跨平台应用开发的新纪元

标题:Flutter:开启跨平台应用开发的新纪元 引言 在移动互联网高速发展的今天,用户对应用的性能、体验和交付速度提出了更高的要求。与此同时,开发者面临着为多个平台(如 iOS、Android、Web 和桌面)分别开…

作者头像 李华
网站建设 2026/1/31 1:37:18

9个AI写作工具,助你轻松搞定本科论文!

9个AI写作工具,助你轻松搞定本科论文! 论文写作的“隐形助手”正在改变你的学习方式 在当今信息化时代,AI 技术已经渗透到我们生活的方方面面,而学术写作也迎来了全新的变革。对于本科生而言,撰写一篇高质量的本科论文…

作者头像 李华
网站建设 2026/1/31 1:37:16

彻底搞懂JavaScript块级作用域与函数作用域:var、let、const的核心区别

彻底搞懂JavaScript块级作用域与函数作用域:var、let、const的核心区别 在JavaScript中,作用域是控制变量访问权限的核心机制,直接影响代码的安全性、可维护性甚至运行结果。尤其是ES6引入块级作用域后,var、let、const 三者的作用…

作者头像 李华