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

转载自http://blog.sina.com.cn/s/blog_541caaee0100z741.html


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

 

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

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

 

比如,有下面两个关系表studentgrade

 

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

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值