mysql内连接是什么

23次阅读

内连接返回两表中存在匹配记录的数据,语法为 select 列名 FROM 表 1 INNER JOIN 表 2 ON 条件;例如查询学生及其成绩:SELECT students.name, grades.subject, grades.score FROM students INNER JOIN grades ON students.id = grades.student_id;其特点为仅保留交集、顺序不影响结果、需指定连接条件避免笛卡尔积,是sql 多表查询的基础且性能良好。

mysql 内连接是什么

mysql内连接(INNER JOIN)是用来从两个或多个表中查询 同时在这些表中存在匹配记录 的数据。它只返回那些在指定连接条件下的列有对应值的行,如果某行在一个表中没有与另一个表匹配的记录,那么这行就不会出现在结果中。

内连接的基本语法

使用 INNER JOIN 进行表连接的常见写法如下:

SELECT 表 1. 列名, 表 2. 列名 FROM 表 1 INNER JOIN 表 2 ON 表 1. 公共列 = 表 2. 公共列;

其中 ON 子句定义了连接条件,通常是两个表之间的外键关系或逻辑关联字段。

举个实际例子

假设有两个表:students(学生表)和 grades(成绩表)。

mysql 内连接是什么

Trae 国内版

国内首款 AI 原生 IDE,专为中国开发者打造

mysql 内连接是什么815

查看详情 mysql 内连接是什么

  • students 表有字段:id, name
  • grades 表有字段:student_id, subject, score

我们想查出每个学生的姓名及其对应的科目和分数,可以这样写:

SELECT students.name, grades.subject, grades.score FROM students INNER JOIN grades ON students.id = grades.student_id;

这条语句只会返回那些既在 students 表中有记录、又在 grades 表中有成绩的学生信息。如果某个学生没有成绩,他不会出现在结果里。

内连接的关键特点

  • 只保留两表中“交集”部分的数据
  • 连接顺序不影响结果(A INNER JOIN B 和 B INNER JOIN A 结果一致)
  • 必须明确指定连接条件(ON 后面的内容),否则会导致笛卡尔积
  • 性能较好,是日常开发中最常用的连接方式之一

基本上就这些。内连接不复杂,但它是多表查询的基础,理解清楚对写 SQL 非常重要。

站长
版权声明:本站原创文章,由 站长 2025-10-29发表,共计922字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
1a44ec70fbfb7ca70432d56d3e5ef742
text=ZqhQzanResources