LeetCode-SQL-关联两个表

开刷

大家好,我是Peter~

最近要准备开始刷LeetCode上关于SQL部分的练习题了。相信很多人是知道LeetCode的,毕竟太多互联网公司是从上面抽题目来考察面试者,尤其是算法相关的题目,它就像是一个庞大的题库。而作为打工人的我们,能做的就是多加练习,提升的能力

LeetCode上面除了算法相关,也有很多SQL的题,评论区的作者们提供了很多优秀的方法和思路;希望自己在本次LeetCode-SQL的连载之后,不管是将来的面试或平时写SQL的时候能够更加得心应手。将自己的练习公布出来,错误的地方希望大家批评指正提供更加优秀的思路,说不定对大家会有所帮助。

LeetCode-175-组合两个表

题目的具体描述如下:

答案

  • 左联结(left join),联结结果保留左表的全部数据
  • 右联结(right join),联结结果保留右表的全部数据
  • 内联结(inner join),取两表的公有数据
select
	p.FirstName
	,p.LastName
	,a.City
	,a.State
from Person as p
left join Address as a
on p.PersonId = a.PersonId

多种连接理解

下面是自己整理的一份关于SQL几种不同连接方式的图形,从连接的语法和结果上进行了可视化展示,方便读者理解不同连接的内在含义,作为一份学习备忘录。

  • left join:只取左表中的内容
  • right join:只取右表中的内容
  • inner join:取两个表相同的部分

MySQL中本身是不支持全连接full (outer) join的,可以通过关键词union来实现

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值