首页 > 学院 > 开发设计 > 正文

关系数据库中关系表间的连接(左连接,右连接,内连接,全连接,外连接)

2019-11-09 13:41:05
字体:
来源:转载
供稿:网友

关系数据库中关系表间的连接主要有:内连接和外连接。

 

内连接:把两个表中数据对应的数据查询出来。

外连接:以某个表为基础把对应数据查询出来(全连接是以多个表为基础),其中又包括左连接和右连接两种。

 

比如,有下面两个关系表student和grade。

 

Student表

 No Name
 1 A
 2 B
 3 C
 4 D

Grade表

 No Grade
 1 90
 2 98
 3 95
 5 100

内连接inner join(在两个表中查询满足条件的对应数据)。

语法:SELECT * FROM student INNER JOIN grade ON student.no=grade.no结果:

 student.no student.name grade.no grade.grade
 1 A 1 90
 2 B 2 98
 3 C 3 95

左连接:包含左表中所有数据,右表中满足条件的对应数据。

语法:SELECT * FROM student LEFT JOIN grade ON student.no=grade.no

结果:

 student.no student.name grade.no grade.grade
 1 A 1 90
 2 B 2 98
 3 C 3 95
 4 D NULL NULL

 

右连接:包含右表中所有数据,左表中满足条件的对应数据。

语法:SELECT * FROM student RIGHT JOIN grade ON student.no=grade.no

结果:

 student.no student.name grade.no grade.grade
 1 A 1 90
 2 B 2 98
 3 C 3 95
 NULL NULL 5 100

 

全连接:左右表中所有数据全部查询出来。

语法:SELECT * FROM student FULL JOIN grade ON student.no=grade.no

结果:

 student.no student.name grade.grade
 1 A 90
 2 B 98
 3 C 95
 4 D NULL
 1 A 90
 2 B 98
 3 C 95
 5 NULL 100

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表