天涯论坛

 找回密码
 立即注册
搜索
查看: 68|回复: 3

28.MySQL中的左(右)外连接 LEFT(RIGHT) [OUTER] JOIN

[复制链接]

2964

主题

144

回帖

9913万

积分

论坛元老

Rank: 8Rank: 8

积分
99139409
发表于 2024-8-4 10:53:48 | 显示全部楼层 |阅读模式

1.准备

CREATE DATABASE mahaiwuji; USE mahaiwuji; CREATE TABLE grade( id INT(4) PRIMARY KEY, name VARCHAR(36) ) ENGINE = INNODB DEFAULT CHARSET = utf8; INSERT INTO grade VALUES (1,一班); INSERT INTO grade VALUES (2,二班); INSERT INTO grade VALUES (3,三班); INSERT INTO grade VALUES (4,四班); CREATE TABLE student( id INT(4) PRIMARY KEY, name VARCHAR(36), gidINT(4) ) ENGINE = INNODB DEFAULT CHARSET = utf8; INSERT INTO student VALUES (1,a1,1); INSERT INTO student VALUES (2,a2,1); INSERT INTO student VALUES (3,a3,2);INSERT INTO student VALUES (4,a4,2); INSERT INTO student VALUES (5,a5,3); INSERT INTO student VALUES (6,a6,3); INSERT INTO student VALUES (7,a7,3); INSERT INTO student VALUES (8,a8,3); INSERT INTO student VALUES (9,a9,5);

2.左外连接

左外连接是外连接查找中的一种,能够将其叫作为左连接。

它用于返回连接关键字(LEFT JOIN)左表中所有的记录,以及右表中符合连接要求的记录。

当左表的某行记录在右表中匹配的记录时,右表中关联的记录将设为空值。

语法

SELECT 查找字段 FROM1 LEFT [OUTER] JOIN2 ON 匹配要求;

关键字“LEFT [OUTER] JOIN”左边的表(表1)被叫作左表叫作主表

关键字右边的表(表2)被叫作右表叫作从表

OUTER查找能够省略。

SELECT * FROM grade LEFT JOIN student ON grade.id=student.gid;

3.右外连接

右外连接是外连接查找中的一种,能够将其叫作为右连接。

它用于返回连接关键字(RIGHT JOIN)右表(主表)中所有的记录,以及左表(从表)中符合连接要求的记录。

当右表的某行记录在左表中匹配的记录时,左表中关联的记录将设为空值。

语法

SELECT 查找字段 FROM1 RIGHT [OUTER] JOIN2 ON 匹配要求;SELECT * FROM grade RIGHT JOIN student ON grade.id=student.gid;

4.总结

外连接是最常用的一种查找数据的方式,分为左外连接(LEFT JOIN)和右外连接(RIGHT JOIN)。外连接与内连接的区别是,内连接只能获取符合连接要求的记录,而外连接不仅能够获取符合连接要求的记录,还能够保存主表与从表不可匹配的记录。右连接查找正好与左连接相反。因此呢,在应用外连接时仅调节关键字(LEFT JOIN或RIGHT JOIN)和主从表的位置,就可实现左连接和右连接的互换运用




上一篇:软件测试|数据库的内连接,左连接,右链接分别是什么
下一篇:内连接、外连接、左连接、右连接、等值连接、自然连接和自连接之间的区别
回复

使用道具 举报

3047

主题

3万

回帖

9606万

积分

论坛元老

Rank: 8Rank: 8

积分
96065852
发表于 2024-9-30 16:49:37 | 显示全部楼层
这夸赞甜到心里,让我感觉温暖无比。
回复

使用道具 举报

3047

主题

3万

回帖

9606万

积分

论坛元老

Rank: 8Rank: 8

积分
96065852
发表于 2024-10-1 22:41:51 | 显示全部楼层
网站建设seio论坛http://www.fok120.com/
回复

使用道具 举报

2996

主题

3万

回帖

9910万

积分

论坛元老

Rank: 8Rank: 8

积分
99109194
发表于 2024-10-20 04:15:44 | 显示全部楼层
你的留言真是温暖如春,让我感受到了无尽的支持与鼓励。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

站点统计|Archiver|手机版|小黑屋|天涯论坛 ( 非经营性网站 )|网站地图

GMT+8, 2024-11-22 23:37 , Processed in 0.101661 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.