25字中文文章标题MySQL 中 Inner 连接的使用方法(mysql中 inner)

MySQL 中 Inner 连接的使用方法

Inner 连接是 MySQL 中最常用的一种连接方式,它可以通过将两个表中相同的记录连接到一起,从而实现数据的高效查询。在进行 Inner 连接时,需要先确定需要连接的两个表,并且可以指定用于连接的字段。下面介绍 Inner 连接的使用方法。

1. 创建需要连接的两个表

首先需要创建需要连接的两个表,以学生信息表和成绩表为例。学生信息表包括学号、姓名和年龄字段,成绩表包括学号、科目和成绩字段。

CREATE TABLE `student` (

`id` int(11) NOT NULL AUTO_INCREMENT,

`name` varchar(20) DEFAULT NULL,

`age` int(11) DEFAULT NULL,

PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4;

CREATE TABLE `score` (

`id` int(11) NOT NULL AUTO_INCREMENT,

`sid` int(11) DEFAULT NULL,

`subject` varchar(20) DEFAULT NULL,

`score` int(11) DEFAULT NULL,

PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4;

2. 插入数据

然后,插入一些测试数据。

INSERT INTO `student` (`name`, `age`) VALUES

(‘Tom’, 18),

(‘Jerry’, 20),

(‘Lucy’, 19);

INSERT INTO `score` (`sid`, `subject`, `score`) VALUES

(1, ‘Math’, 90),

(2, ‘Math’, 85),

(3, ‘Math’, 88),

(1, ‘English’, 80),

(2, ‘English’, 85),

(3, ‘English’, 95);

3. 进行 Inner 连接

完成插入操作后,即可开始进行 Inner 连接。可以使用以下 SQL 语句进行连接。

SELECT *

FROM `student`

INNER JOIN `score`

ON `student`.`id` = `score`.`sid`;

上述语句中,使用 INNER JOIN 关键字进行连接,并使用 ON 条件表达式指定连接字段。其中,`student`.`id` 表示学生信息表的主键,`score`.`sid` 表示成绩表中学号字段。执行该语句后,可以得到如下结果。

id name age id sid subject score

1 Tom 18 1 1 Math 90

1 Tom 18 4 1 English 80

2 Jerry 20 2 2 Math 85

2 Jerry 20 5 2 English 85

3 Lucy 19 3 3 Math 88

3 Lucy 19 6 3 English 95

可以看到,连接结果包括学生信息和成绩两个表的交集,其中每个学生的学科成绩都有记录。如果需要只查询某个学生的成绩,可以添加 WHERE 条件表达式,例如:

SELECT *

FROM `student`

INNER JOIN `score`

ON `student`.`id` = `score`.`sid`

WHERE `name` = ‘Tom’;

执行该语句后,可以得到以下结果:

id name age id sid subject score

1 Tom 18 1 1 Math 90

1 Tom 18 4 1 English 80

因此,Inner 连接非常适用于需要联合多个表查询的场景,可以通过连接不同的表,实现数据的高效获取和组合。


数据运维技术 » 25字中文文章标题MySQL 中 Inner 连接的使用方法(mysql中 inner)