左连接两个表mysql

2023年 8月 4日 55.7k 0

在MySQL中,连接(join)操作是非常常见的操作。而左连接(left join)是其中的一种常见连接方式。左连接可以将两个表中的数据按照一定条件进行连接,同时保留左侧表中的所有数据。

左连接两个表mysql

下面我们来看一个左连接两个表的例子。首先我们创建两个表,一个是学生表(student),包含学生的姓名和性别信息;另一个是成绩表(score),包含学生的姓名和成绩信息。

CREATE TABLE `student` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(20) DEFAULT NULL,
`gender` varchar(10) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `score` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(20) DEFAULT NULL,
`score` float DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

接下来,我们往这两个表中插入一些测试数据。

INSERT INTO `student` (`name`, `gender`) VALUES
('张三', '男'),
('李四', '女'),
('王五', '男'),
('赵六', '女');
INSERT INTO `score` (`name`, `score`) VALUES
('张三', 86.5),
('李四', 92.0),
('王五', 78.5);

现在我们需要将这两个表按照姓名进行左连接。具体代码如下:

SELECT s.name, s.gender, sc.score
FROM student s
LEFT JOIN score sc
ON s.name = sc.name;

在这个例子中,我们使用了LEFT JOIN将学生表和成绩表按照姓名进行连接。最终结果会保留学生表中所有学生的信息,如果在成绩表中不存在对应学生的成绩,那么score列将会显示为NULL。

左连接是非常常见的连接方式之一,在实际开发中也经常会使用。因此,掌握左连接的用法对于学习MySQL非常有帮助。

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论