1、电子信息工程技术专业教学资源库Electronic information teaching resource主讲:卢桂荣职业技能主题3:SQL语言编写与应用能力实践任务3-6:使用SQL语言进行多表数据查询资源节点3-6-3:多表连接查询实践2课程内容1.2.等值连接查询语法3.案例分析课程总结查询前先熟悉下StuInfo数据库中的表结构1.等值连接查询语法SELECT 表名.列名1,.,列名n FROM 表1 ,.,表n WHERE 已知查询条件 AND 隐含的联接条件 Group byHaving Order by 说明:“隐含的联接条件”一般是表1.主码=表2.外码,也就是关系图的连接
2、线对应的等值表达式。2.案例分析案例1:查询查询专业基础课学的最好的3位同学的学生姓名、性别、班级编号、电话信息、课程名及成绩分析:查询结果里的姓名、性别、班级编号、电话信息在学生表,课程名称在课程表,成绩在成绩表结论:共计涉及到3个表,多表查询。可以使用连接查询实现。3.案例分析连接线连接线2.案例分析案例1:查询查询专业基础课学的最好的3位同学的学生姓名、性别、班级编号、电话信息、课程名及成绩。写连接查询语句要领:(1)先将基本查询输入(2)目标列输入要查询的字段,放在select子句里(3)查询涉及到的表罗列好,放在from子句里(4)连接条件是最难的,也有诀窍:先写已知条件,后写隐含的
3、连接条件。(5)排序子句写好。(6)选择前3,使用top子句。2.案例分析案例1:查询查询专业基础课学的最好的3位同学的学生姓名、性别、班级编号、电话信息、课程名及成绩。2.案例分析案例2:查询不同政治面貌学生学习成绩的总分、平均分,给出政治面貌、总分、平均分。分析:查询结果里的政治面貌在学生表,分数在成绩表,平均成绩和总成绩要用集合函数。每种政治面貌都要给出总分和评价分,考虑要分组,分组字段是政治面貌。结论:共计涉及到2个表,多表查询。可以使用连接查询实现。2.案例分析案例2:查询不同政治面貌学生学习成绩的总分、平均分,给出政治面貌、总分、平均分。2.案例分析案例3:查询出各个班级学生的平均
4、成绩,给出班级编号和平均成绩,并将结果按平均成绩降序排列;分析:查询结果里的班级编号在学生表,成绩在成绩表平均成绩要用集合函数结果排序要用排序子句结论:共计涉及到2个表,多表查询。可以使用连接查询实现。2.案例分析案例3:查询出各个班级学生的平均成绩,给出班级编号和平均成绩,并将结果按平均成绩降序排列1分析查询条件和结果所涉及的表,是多表采用多表查询,可以考虑连接查询。3 课程总结2写连接查询条件的时候一定 要结合关系图中的连接线,写上对应的等值表达式。3排序子句写在最后。4有“group by 分组字段M”分组子句的时候,目标列有只能有分组字段M和集合函数。M分组字段可以是1个或者多个。电子信息工程技术专业教学资源库Electronic information teaching resource