第六章数据库练习题

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第六章

1 设 A、B两个表的记录数分别为3和4,对两个表执行交叉连接查询,查询结果中最多可获得()条记录。

A. 3

B. 4

C. 12

D.81

2-8题数据见表6-1,6-2,6-3

2 使用查询语句:

SELECT 课程编号,MAX(分数)FROM grade GROUP BY 课程编号

查询结果的记录数有()

A . 2

B .3 C. 4 D . 5

3 使用查询语句:

SELECT 学号,COUNT(*) FROM grade

WHERE 分数 >= 75

GROUP BY 学号 HAVING COUNT(*) >= 2

ORDER BY 学号 DESC

查询结果中的第一条记录的学号是()

A . 0002 B. 0003 C. 0001 D . 无查询结果

4 使用查询语句:

SELECT student_info.姓名,sum(分数)

FROM student_info,grade

WHERE student_info.学号=grade.学号

GROUP BY student_info.学号,student_info,姓名

查询结果是()

A. 按学号分类的每个学生所有课程成绩的总分

B. 按学号分类的每个学生各课程成绩

C. 全体学生的按各课程分类的成绩总分

D . 所有学生所有课程成绩总分

5 有以下查询语句

SELECT MAX(分数) as 最高分

FROM student_info,curriculum,grade

where student_info,学号=geade .学号

and curriculum. 课程编号=grade.课程编号

and 课程名称=’SQL SERVER 数据库及应用’

查询的结果是()

A . 82 B. 87 C. 78 D.90

6 查询选修了课程编号为"0002"的学生的学号和姓名,以下 SQL 语句哪个是错误的()

A. SELECT 学号,姓名 FROM studeng_info

where学号= (select 学号 from grade where 课程编号 = ’0002‘)

B . select student_info.学号,student_info.姓名

from student_info,grade

where student_info.学号= grade.学号 and 课程编号 =’0002‘)

C . SEKECT student_info.学号,student_info.学号=grade.学号

where grade.课程编号= ’0002‘

D. SELECT 学号,姓名 FROM student_info

where 学号 in (select 学号 from grade where 课程编号 = ’0002‘)

7 查询每门课程的最高分,要求得到的信息包括课程名称和分数,正确的命令是()

A.

SELECT 课程名称,SUM (分数) as 分数

from curricum.课程编号 = grade.课程编号

GROUP BY 课程名称

B .

SELECT 课程名称,,MAX (人数) 分数

from curriculum,grade

where curriculum.课程编号= grade.课程编号

GROUP BY 课程名称

C .

SELECT 课程名称,SUM(分数) 分数

FROM curriculum,grade

WHERE curriculum.课程编号= grade.课程编号

GROUP BY CURRICULUM. 课程编号

D.

ELECT 课程名称,MAX(分数) as 分数

FROM CUEEICULUM, grade

WHERE curriculum.课程编号= grade.课程编号

GROUP BY curriculum. 课程编号

在已建立的studentsdb数据库中,修改student_info表,为其添加一列”院系char(8)“;修改curriculum表,为其添加一列”开课院系char(8)“,完成 8-10 题

8 统计只有2名以下(含2名)学生选修的课程的情况,统计结果中的信息包括课程名称、开课院系和选修人数,并按选课人数排序。正确的命令是()

A.

SELECT 课程名称,开课院系,COUNT(课程编号)as 选修人数

FROM grade,curriculum

where curriculum.课程编号= grade.课程编号

GROUP BY grade.课程编号 GAVING COUNT(*)<=2

ORDER BY COUNT(课程编号)

B .

SELECT 课程名称,开课院系,COUNT(学号)选修人数

FROM grade,curriculum

WHERE curriculum.课程编号= grade.课程编号

GROUP BY grade.学号 GACING COUNT(*)<=2

IRDER BY COUNT(学号)

C .

SELECT 课程名称,开课院系,COUNT(学号) AS 选修人数

FROM grade,curriculum

WHERE curriculum.课程编号= grade.课程编号

GROUP BY 课程名称,开课院系 GACING COUNT(*)<=2

IRDER BY 选课人数

D .

SELECT 课程名称,开课院系,COUNT(学号) AS 选修人数

FROM grade,curriculum

HAVING COUNT (课程编号)<=2 GROUP BY 课程名称

ORDER BY 选修人数

9 向student_info表插入一条记录的正确命令是()

A .

APPEND INTO student_info

values(‘0009’,‘张三’,‘男’,‘管理’,‘1983-10-28’)

B .

INSERT INTO student_info (学号,姓名,性别,出生日期,院系)

values(‘0009’,‘张三’,‘男’,‘1983-10-28’,’管理‘)

C .

APPEND INTO student_info(学号,姓名,性别,出生日期,院系)

values(‘0009’,‘张三’,‘男’,‘1983-10-28’,’管理‘)

D .

INSERT INTO student_info

values(‘0009’,‘张三’,‘男’,‘1983-10-28’)

10 使用SQL语句从student_info表中查询所有姓张的同学的信息,正确的命令是()

A . SELECT * FROM student_info WHERE LEFT (姓名,1)= ’张‘

B. SELECT * FROM student_info WHERE RIGHT (姓名,1)= ’张‘

C . SELECT * FROM student_info WHERE TRIM (姓名,1)= ’张‘

D . SELECT * FROM student_info WHER

E STR (姓名,1)= ’张

11 查询职工实发工资的正确命令是()

A .

SELECT 姓名,(基本工资+津贴+奖金-扣除) AS 实发工资FROM 工资

B .

SELECT 姓名,(基本工资+津贴+奖金-扣除) AS 实发工资FROM 工资

WHERE 职工.职工号=工资.职工号

C .

SELECT 姓名,(基本工资+津贴+奖金-扣除) AS 实发工资FROM 工资,职工WHERE 职工.职工号=工资.职工号

D .

ELECT 姓名,(基本工资+津贴+奖金-扣除) AS 实发工资FROM 工资JOIN 职工WHERE 职工.职工号=工资.职工号

相关文档
最新文档