SQL Server中left join、inner join和right join的区别?

      数据库是我们IT行家常的事情,相信大家都不陌生,计算机专业都开了数据库系统概论这门课程,我分享下在暑假找实习参加宣讲会过程做的笔试题中遇到关于left join、inner join和right join的区别的简述题,希望对需要的朋友有所帮助。看下面一个小例子,我懒的开软件,用Excel替代下,谅解谅解~
student表:
这里写图片描述
grade表:
这里写图片描述

  • left join:中文意思理解为左外连接,返回的结果是返回左表中所有的记录以及右表中连接字段相等的记录,没有匹配结果使用NULL填补,即左表全部行+右表匹配的行。
select * from student left outer join grade on student.sno = grade.sno;

这里写图片描述
- inner join:内连接,又叫等值连接,只返回两个表中连接字段相等的行。

select * from student inner join grade on student.sno = grade.sno;

这里写图片描述
- right join:右连接,返回右表中所有的记录以及左表中连接字段相等的记录,没有匹配结果使用NULL填补,即右边全部行+左边匹配的行。

select * from student right outer join grade on student.sno = grade.sno;

这里写图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值