对于下图所示的Students和SC关系,属性Sno 表示学号,Sname 表示

练习题库2022-08-02  59

问题 对于下图所示的Students和SC关系,属性Sno 表示学号,Sname 表示姓名,Sex表示性别,SD 表示专业,Age表示年龄,Cno表示课程号,Grade表示成绩。a.当用户查询“选了课程 2 的学生数”时,其结果应为 () ;当 Students 和 SC关系进行自然连接时,其结果集的属性列数应为 () 。b.查询“至少选修了两门课程的每个学生的平均成绩”的SQL语句如下:SELECT    Sno, ()FROM    SCGROUP BY Sno  ()  >1;A.GradeB.SUM(Grade)/ 7C.AVG(Grade)D.SUM(Grade)/ COUNT(Cno)

选项 A.Grade
B.SUM(Grade)/ 7
C.AVG(Grade)
D.SUM(Grade)/ COUNT(Cno)

答案 C

解析 本题考查的是应试者对关系运算、SQL语言的掌握程度。
    试题(59),(60)考查的是关系运算的基础知识。表SC为学生选课表,由于表中有三个不同的学生学号Sno。因此试题(59)的正确答案为A。当Students和SC关系进行自然连接时,其结果集的属性列数为7个。因为自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果集中将重复属性列去掉,因此结果集的属性列数为7个。
    试题(61)正确的答案是C,因为试题要求每个学生的平均成绩,所以使用平均值集函数avg。SQL提供了5个预定义集函数:avg(平均值)、min(最小值)、max(最大值)、sum(求和)及count(计数)。
    试题(62)正确的答案是D,因为元组在分组前按照某种方式加上限制,使得不需要的分组为空,应该在GROUP BY子句后面跟一个HAVING子句。即查询至少选修了两门课程的每个学生的乎均成绩的SQL语句如下:
SELECT  Sno,AVG(Grade)
  FROM  SC
  GROUP  BY  Sno
      HAVING COUNT (DISTINCT(SNO))>1:
转载请注明原文地址:https://tihaiku.com/congyezige/2428112.html

最新回复(0)