SQL的子查询,可以理解为SQL语句的嵌套:
源数据:
问题如下
如图,要查询英语成绩大于平均分的数据。必须先求出平均分,经过之前的学习,我们知道可以用如下语句求出平均分:
sql = "SELECT avg(英语) as 平均分 FROM [英语-成绩单$]"
那么大于平均分的成绩,就可以用WHERE语句筛选。
Sql = "SELECT 姓名,英语 FROM [英语-成绩单$] where 英语>平均分
代码运行的结果如下:
代码如下:
用SQL子查询的,核心SQL语句如下:
sql1 = "SELECT avg(英语) as 平均分 FROM [英语-成绩单$]" Sql = "SELECT 姓名,英语 FROM [英语-成绩单$] where 英语>(" & sql1 & ")"
建议大家,自己动手操作一下。