
注:文章首发于微信公众号【可乐的数据分析之路】,号内回复“资料”,可免费领取数据分析学习资料大礼包
本文是对比Excel学习SQL系列第6篇文章,之前5篇传送门在此:《分组和子查询》、《计算字段》、《对行和列的操作》、《库/表/记录的增查删改》、《写给小白的SQL学习文章》。
表连接可以用来联合多张表进行查询,也就是将多张表横向整合成为一张表,类似Excel中的vlookup函数,表连接用到JOIN命令,JOIN之于SQL的重要性就如同vlookup函数之于Excel的重要性。
表连接的前提:
- 有两个或两个以上的表
- 几个表有相同的列字段
- 表中有其他表没有的字段
如下图所示,我们要用到的两张表,student表和sc表,都有相同的snum字段,感觉大家好像不太喜欢MySQL的界面,于是我就换成了SQL Server,大家都用什么数据库比较多,评论区留言哦~

01 where子句创建连接
--语法
Select 列 from 表1,表2 where 表1.列x = 表2.列xQ1:查询学生的姓名、学号、学科号以及成绩。
select sc.snum,sc.cnum,sc.score,student.sname
from sc,student
where sc.snum = student.snum解释:姓名在student表中,学号、学科号和成绩在sc表中,查询时需要将两个表连接起来,观察发现两个表都有一个公共列字段snum,关键在于where子句后连接sc表的snum和student表的snum,注意限定列名。

02 内连接
--语法
Select 列 from 表1 INNER JOIN 表2 ON 表1.列x = 表2.列x内连接不用where子句来创建,用innerjoin …on来连接两个表,取出的结果是两个表公共的部分。

:表连接&spm=1001.2101.3001.5002&articleId=110651135&d=1&t=3&u=43f590b348954805aa031d7affb87094)

被折叠的 条评论
为什么被折叠?



