我的目标:让中国的大学生走出校门的那一刻就已经具备这些Office技能,让职场人士能高效使用Office软件为其服务。支持我,也为自己加油!
直接看下面的例子。
数据源中的学生表如下:

成绩表如下:

这两份表格放在两个不同的Sheet中,如下:

我们可以看到学生表中没有数学成绩,成绩表中没有学生姓名,如果想要查询数学成绩大于等于80分的学生姓名和数学成绩我们会怎么做呢?
平常情况下我们会通过两个表中共有的字段,比如学号,通过Vlookup进行查询,然后再筛选数据。
Excel表如果没有添加到数据模型中是不能做连接关系的,如果在Access中可以把两个表通过学号连接起来,那在Excel中能用SQL语言实现此查询吗?
看下效果:

语句:
select [学生$].姓名,[成绩$].数学 from [学生$],[成绩$] where [学生$].学号 = [成绩$].学号 and [成绩$].数学>=80
相当于用了where子句,其中两个条件,通过 [学生$].学号 = [成绩$].学号 把两个表建立连接,另外一个条件 [成绩$].数学>=80 用来筛选。
还可以如下:

语句:
select [学生$].姓名,[成绩$].数学 from [学生$] join [成绩$] on [学生$].学号 = [成绩$].学号 where [成绩$].数学>=80
用关键词 JOIN 来从两个表中获取数据,[学生$] join [成绩$] on [学生$].学号 = [成绩$].学号 。
此处的join属于内连接,也可以写成 inner join ,上述案例中大家可以测试:
select [学生$].姓名,[成绩$].数学 from [学生$] inner join [成绩$] on [学生$].学号 = [成绩$].学号 where [成绩$].数学>=80
一样可以成功。
SQL中的连接你还知道哪些呢?
6月15日
Excel函数培训班招生进行中
110个函数,40节课
每节课都有练习
课程包答疑
需要参加培训的朋友
请私聊我,微信:527240310

本节先分享到这里,祝大家每天都有进步。

打开以下公众号,点击,服务→云课堂
系统学习Office知识,
购买的课程包素材和答疑哦!
↙点击“阅读原文”进入米宏学院




