根据网考网考试中心的统计分析,以下试题在2019/6/24日职称计算机考试VisualFoxPro习题练习中,答错率较高,为:67%
【分析解答题】在考生文件夹下有学生成绩数据库XUESHENG3,包括如下所示三个表文件以及相
关的索引文件:
1、XS.DBF(学生文件: 学号 C8,姓名 C8,性别 C2,班级 C5;另有索引文件
XS.IDX,索引键:学号)
2、CJ.DBF(成绩文件: 学号 C8,课程名 C20,成绩 N5.1;另有索引文件
CJ.IDX,索引键:学号)
3、CJB.DBF(成绩表文件:学号 C8,姓名 C8,班级 C5,课程名 C12,成绩
N5.1)
设计一个名为XS3的菜单,菜单中有两个菜单项"计算"和"退出"。程序运行时,单击"计算"菜单项应完成下列操作:将所有选修了"计算机基础"的学生的"计算机基础"成绩, 按成绩由高到低的顺序填列到成绩表文件CJB.DBF中(事前须将文件中原有数据清空)。单击"退出"菜单项,程序终止运行。
(注:相关数据表文件存在于考生文件夹下)
本题的主要考核点:
结构化查询语言(SQL)中的联接查询、查询的排序、查询的去向等知识
,答错率:67%
试题解析:
解题思路: 在本题中要想得到所有选修了"计算机基础"的学生的"计算机基础" 成绩及学生的姓名等信息,就需要用到联接查询。因为学生的姓名、班级在表XS.DBF中,而学生的成绩在表CJ.DBF中。而这两个表要联接起来可以通过"学号"字段。 有以下两种联接查询的形式:SELECT XS.学号,姓名,班级,课程名,成绩 FROM XS,CJ WHERE XS.学号=CJ.学号 AND 课程名="计算机基础" 或者 SELECT XS.学号,姓名,班级,课程名,成绩 FROM XS LEFT JION CJ ON XS.学号=CJ.学号 WHERE 课程名="计算机基础" 通过以上的联接查询便得到了所有选修"计算机基础"的学生的"计算机基础"的成绩及学生的姓名等信息。而题中所要求按成绩的降序排序,所以应该在以上SQL语句的基础上加入:ORDER BY 成绩 DESC 将查询所得到的结果放于一个数组变量AFieldsValue中,要用到INTO ARRAY AFieldsValue.至此一个完整的SQL联接查询语句便形成了:SELECT XS.学号,姓名,班级,课程名,成绩 FROM XS,CJ WHERE XS.学号=CJ.学号 AND 课程名="计算机基础" ORDER BY 成绩 DESC INTO ARRAY AFieldsValue 清空CJB.DBF 将tableName中的资料添加到已被清空的CJB.DBF中INSERT INTO CJB FROM ARRAY AFieldsValue 查看试题解析出处>>
发布评论 查看全部评论