软件测试之SOL面试题(一)

补充作业一

设有三个关系:

S(SNO, SNAME, AGE, SEX,Sdept)

SC(SNO, CNO, GRADE)

C(CNO, CNAME, TEACHER)

使用关系代数表达式表示下列查询:

1、查询学 为S3学生所学课程的课程名与任课教师名。

2、查询至少选修LIU老师所教课程中一门课的女生姓名。

3、查询WANG同学不学的课程的课程 。

4、查询至少选修两门课程的学生学 。

5、查询选修课程中包含LIU老师所教全部课程的学生学 。

补充作业二

三个关系同上,使用SQL语言表示下列查询:

1、 查询门门课程都及格的学生的学

方法1:

提示:根据学 分组,就得到每个学生所有的课程成绩,在某个学生这一组成绩里,如果他所有的课程成绩都大于60分则输出该组学生的学

2、查询既有课程大于90分又有课程不及格的学生的学

自身连接:

3、查询平均分不及格的课程 和平均成绩

查询平均分及格的课程 和课程名

4、找出至少选修了2 学生选修过的全部课程的学生

提示:不存在这样的课程y,学生2选修了y,而学生x没有选。

5、求各门课程去掉一个最高分和最低分后的平均分

第一步,求所有成绩的平均分(去掉一个最高分和最低分)

第二步,将所有成绩按各门课程的课程 CNO分组

1、查询7 课程没有考试成绩的学生学 。

2、查询7 课程成绩在90分以上或60分以下的学生学 。

3、查询课程名以“数据”两个字开头的所有课程的课程 和课程名。

4、查询每个学生所有课程的平均成绩,输出学生学 和平均成绩。

5、查询每门课程的选修人数,输出课程 和选修人数。

6、查询选修7 课程的学生的学 、姓名、性别。

或:

7、查询选修7 课程的学生的平均年龄。

或:

8、查询有30名以上学生选修的课程 。

9、查询至今没有考试不及格的学生学 。

或:

补充三

1、找出选修课程 为C2的学生学 与成绩。

2、找出选修课程 为C4的学生学 与姓名。

注意本题也可以用嵌套做

思考本题改为“找出选修课程 为C4的学生学 、姓名与成绩”后还能用嵌套做吗?

3、找出选修课程名为 Maths 的学生学 与姓名。

注意本题也可以用嵌套做

4、找出选修课程 为C2或C4的学生学 。

或:

5、找出选修课程 为C2和C4的学生学 。

注意本题也可以用连接做

思考:

Select distinct sno from sc where cno=’C2′ andcno=’C4’正确吗?

6、找出不学C2课程的学生姓名和年龄。

或:

7、找出选修了数据库课程的所有学生姓名。(同3)

8、找出数据库课程不及格的女生姓名。

9、找出各门课程的平均成绩,输出课程名和平均成绩。

思考本题也可以用嵌套做吗?

10、找出各个学生的平均成绩,输出学生姓名和平均成绩。

思考本题也可以用嵌套做吗?

11、找出至少有30个学生选修的课程名。

注意本题也可以用连接做

12、找出选修了不少于3门课程的学生姓名。

注意本题也可以用连接做

13、找出各门课程的成绩均不低于90分的学生姓名。

方法二:

只要有一门不小于90分就会输出该学生学

14、找出数据库课程成绩不低于该门课程平均分的学生姓名。

15、找出各个系科男女学生的平均年龄和人数。

16、找出计算机系(JSJ)课程平均分最高的学生学 和姓名。

17、(补充)查询每门课程的及格率。

本题可以分三步做:

第1步:得到每门课的选修人数

第2步:得到每门课及格人数

第3步:每门课的及格人数/每门课选修人数

18、查询平均分不及格的学生的学 ,姓名,平均分。

思考本题也可以用嵌套做吗?

19、查询平均分不及格的学生人数。

下面是一个典型的错误

这是每个学生有几门不及格的数目

补充四

1、查询工资在1000到3000元之间的男性业务员的姓名和办公室编 。

2、查询各个办公室的业务员人数,输出办公室编 和对应的人数。

3、查询每个客户在2002年5月购买的总金额,输出客户 和相应的总金额。

4、查询2002年5月购买次数超过5次的所有客户 ,且按客户 升序排序。

5、查询各办公室男性和女性业务员的平均工资。

6、查询2002年5月曾经在王海亮业务员手中购买过商品的客户 、 客户姓名和联系电话。

注意本题也可以用连接做

7、查询所有工资比1538 业务员高的业务员的编 、姓名和工资。

8、查询所有与1538 业务员在同一个办公室的其他业务员的编 和姓名。

9、查询销售总金额最高的业务员的编 。

10、查询所有业务员的编 、姓名、工资以及工资比他高的其他业务员的平均工资。

利用自连接

补充五

1、找出每个班级的班级代码、学生人数、平均成绩。

2、找出每个学生的班级代码、学生姓名、考试科目数、总成绩。

3、输出一张表格,每位学生对应一条记录,包括字段:班级代码、学生姓名、语文成绩、数学成绩、外语成绩。

4、输出一张表格,有成绩低于60分的每位学生对应一条记录,包括字段:班级代码、学生姓名、最低成绩。

5、输出一张表格,有成绩低于60分的每位学生对应一条记录,包括字段: 班级代码、学生姓名、最高成绩、平均成绩。

请思考下列做法是否正确:

6、输出一张表格,所有成绩都不低于60分的每位学生对应一条记录,包括字段:班级代码、学生姓名、平均成绩。

7、输出一张表格,每一位学生对应一条记录,包括字段:班级代码、学生姓名、去掉一个最低分后的平均成绩。

8、输出一张表格,每门科目对应一条记录,包括字段: 科目、去掉一个最低分后的平均成绩。

补充六

1、查询年龄在19至21岁之间的女生的学 ,姓名,年龄,按年龄从大到小排列。

2、查询姓名中有“明”字的学生人数。

3、查询1001课程没有成绩的学生的学 。

4、查询JSJ、SX、WL系的学生学 ,姓名,结果按系及学 排列。

5、计算每一门课的总分、平均分,最高分、最低分。

6、查询平均分大于90分的男学生学 及平均分。

连接:

嵌套:

7、查询选修课程超过2门的学生姓名。

本题也可以用嵌套做

8、查询 JSJ 系的学生选修的课程 。

本题也可以用嵌套做

9、查询选修1002课程的学生的学生姓名(用连接和嵌套2种方法)

10、查询学生姓名以及他选修课程的课程 及成绩。

思考本题也可以用嵌套做吗?

3.6 使用SQL查询语句表达下列对教学数据库中三个基本表S、SC、C的查询:

(1)统计有学生选修的课程门数。

(2)求选修C4课程的学生的平均年龄。

或者

(3)求LIU老师所授课程的每门课程的学生平均成绩。

(4)统计每门课程的学生选修人数(超过10人的课程才统计)。要求输出课程 和选修人数,查询结果按人数降序排列,若人数相同,按课程 升序排列。

(5)检索学 比WANG同学大,而年龄比他小的学生姓名。

(6)检索姓名以WANG打头的所有学生的姓名和年龄。

(7)在SC中检索成绩为空值的学生学 和课程 。

(8)求年龄大于女同学平均年龄的男学生姓名和年龄。

(9)求年龄大于所有女同学年龄的男学生姓名和年龄。

除法运算

3.7 使用SQL更新语句表达对教学数据库中三个基本表S、SC、C的各个更新操作:

(1)往基本表S中插入一个学生元组(‘S9’,‘WU’,18)。

(2)在基本表S中检索每一门课程成绩都大于等于80分的学生学 、姓名和性别,并把检索到的值送往另一个已存在的基本表STUDENT(S#,SANME,SEX)。

(3)在基本表SC中删除尚无成绩的选课元组。

(4)把WANG同学的学习选课和成绩全部删去。

(5)把选修MATHS课不及格的成绩全改为空值。

(6)把低于总平均成绩的女同学成绩提高5%。

(7)在基本表SC中修改C4课程的成绩,若成绩小于等于75分时提高5%,若成绩大于75分时提高4%(用两个UPDATE语句实现)。

3.8 “仓库管理”关系模型有五个关系模式:

零件 PART(P#,PNAME,COLOR,WEIGHT)

项目 PROJECT(J#,JNAME,DATE)

供应商 SUPPLIER(S#,SNAME,SADDR)

供应 P_P(J#,P#,TOTOAL)

采购 P_S(P#,S#,QUANTITY)

(1)使用SQLDDL语句定义上述五个基本表,并说明主键和外键。

(2)试将PROGECT、P_P、PART三个基本表的自然联接定义为一个视图VIEW1,PART、P_S、SUPPLIER 三个基本表的自然联接定义为一个视图VIEW2。

(3)试在上述两个视图的基础上进行数据查询:

1)检索上海的供应商所供应的零件的编 和名字。

2)检索项目J4所用零件的供应商编 和名字。

3.9 对于教学数据库中基本表SC,已建立下列视图:

试判断下列查询和更新是否允许执行。若允许,写出转换到基本表SC上的相应操作。

(1)

(2)

(3)

(4)

(5)

3.10 预处理方式对于嵌入式SQL的实现有什么重要意义?

预处理方式是先用预处理程序对源程序进行扫描,识别出SQL语句,并处理成宿主语言的函数调用形式; 然后再用宿主语言的编译程序把源程序编译成目标程序。这样,不用扩充宿主语言的编译程序, 就能处理SQL语句。

觉得文章不错就点个在看呗,转发就更好了

Linux 环境变量配置总结

性能测试 告评审规范总结

大数据测试基础知识点

软件测试某大厂三面真题

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年10月19日
下一篇 2021年10月19日

相关推荐