计算机三级

已知学生关系S(学生,姓名,班级,课程名称,成绩),学号由入学年份、系别、专业编号和班级编号组成,则其候选关键字是A.学号、姓名B.学号、课程名称C.姓名、成绩D.学号、班级

题目

已知学生关系S(学生,姓名,班级,课程名称,成绩),学号由入学年份、系别、专业编号和班级编号组成,则其候选关键字是

A.学号、姓名

B.学号、课程名称

C.姓名、成绩

D.学号、班级

参考答案和解析
正确答案:B
解析:候选关键字应该是能唯一标识关系的一个元组,根据学号表示的意义,学号可唯一标识一个学生姓名,当在学生关系中,一个学生可学习很多课程,所以学号和课程号可唯一标识学生关系S的一个元组,因而他们的组合可作为候选关键字。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

已知有如下3个表: · 学生(学号,姓名,性别,班级) · 课程(课程名称,学时,性质) · 成绩(课程名称,学号,分数) 若要列出班级=“97计算机”的所有同学的姓名,应该对关系“学生”进行( )操作。

A选择

B连接

C投影

D选择和投影


参考答案:D

第2题:

已知学生关系S(学生,姓名,班级,课程名称,成绩),学号由入学年份、专业编号和班内编号组成。则其候选关键字是( )。

A.(学号,姓名)

B.(学号,课程名称)

C.(姓名,成绩)

D.(学号,班级)


正确答案:A
解析:关键字就是主码,在本题中,将学号和姓名可以作为关键字,因为这两个作为关键字,重复的可能性最小。

第3题:

已知系(系编号,系名称,系主任,电话,地点)和学生(学号,姓名,性别,入学日期,专业,系编号)两个关系,学生关系的外关键字是()。

A.系编号

B.学号

C.姓名

D.无


正确答案:A

第4题:

利用SQL派生一个包含“课程名称”、“姓名”和“成绩”的视图,要求按“课程名称”升序排序,正确的语句是( )。

A.CREATE VIEW view1 AS; (SELECT课程.课程名称,学生.姓名,成绩.成绩; FROM课程INNER JOIN成绩; INNER JOIN学生: ON成绩.学号=学生.学号; ON课程.课程编号=成绩.课程编号; GROUP BY课程名称)

B.CREATE VIEW view1 AS; (SELECT课程.课程名称,学生.姓名,成绩.成绩; FROM课程INNER JOIN成绩; INNER JOIN学生: ON成绩.学号=学生.学号; ON课程.课程编号=成绩.课程编号; ORDER BY课程名称)

C.CREATE VIEW view1 AS; SELECT课程.课程名称,学生.姓名,成绩.成绩; FROM课程INNER JOIN成绩; INNER JOIN学生: ON成绩.学号=学生.学号; ON课程.课程编号=成绩.课程编号; GROUP BY课程名称

D.CREATE VIEW view1 AS; SELECT课程.课程名称,学生.姓名,成绩.成绩; FROM课程INNER JOIN成绩; INNER JOIN学生; ON成绩.学号=学生.学号; ON课程.课程编号=成绩.课程编号; ORDER BY课程名称


正确答案:D
解析:利用SQL命令可以定义直接建立视图,命令格式如下:
CREATE VIEW视图名AS;
SELECT语句
注意:在定义视图时,SELECT语句部分不需要用括号括起来,用来排序的SQL短语是ORDER BY,而GROUP BY短语的功能是对记录进行分组。

第5题:

已知学生关系S(学号、姓名、班级、课程名称、成绩),学号由入学年份、系别、专业编号和班内编号组成。则其侯选关键字是( )。

A.(学号、姓名)

B.(学号、课程名称)

C.(姓名、成绩)

D.(学号、班级)


正确答案:B

第6题:

~(35)题使用如下三个表: 学生.DBF:学号C(8),姓名C(12),性别C(2),出生日期D,院系C(8) 课程.DBF:课程编号C(4),课程名称C(10),开课院系C(8) 学生成绩.DBF:学号C(8),课程编号C(4),成绩I(32)查询每门课程的最高分,要求得到的信息包括课程名称和分数。正确的命令是A)SELECT课程名称,SUM(成绩)AS分数FROM课程,学生成绩; WHERE课程.课程编号=学生成绩.课程编号; GROUP BY课程名称B)SELECT课程名称,MAX(成绩)分数FROM课程,学生成绩;WHERE课程.课程编号=学生成绩.课程编号; GROUP BY课程名称C)SELECT课程名称,SUM(成绩)分数FROM课程,学生成绩; WHERE课程.课程编号二学生成绩.课程编号; GROUP BY课程.课程编号D)SELECT课程名称,MAX(成绩)AS分数FROM课程,学生成绩; WHERE课程.课程编号=学生成绩.课程编号; GROUP BY课程编号


正确答案:B
本题考查使用MAX()函数构造SQL查询。使用SQL查询课程的最高分,可以用MAX()函数来实现。由于查询的是每门课程的最高分,所以需要按照课程名称进行分组,故选项B正确。选项A的错误在于查询结果由SUM(成绩)构成,是对分组后的成绩进行了求和,选项C也是同样的错误,选项D错误在于AS子句后只有一个字段名,而查询结果字段有两个,无法匹配,也是错误的。

第7题:

学生、课程和成绩三个关系:学生(学号,姓名,性别,班级),课程(课程名称,学时,性质),成绩(课程名称,学号,分数),若打印学生成绩单,包含学号、姓名、课程名称、分数,应该对这些关系进行( )操作。

A.并

B.交

C.乘积

D.连接


正确答案:D

第8题:

已知系(系编号,系名称,系主任,电话,地点)和学生(学号,姓名,性别,入学日期,专业,系编号)两个关系,系关系的主关键字是(),系关系的外关键字(),学生关系的主关键字是(),外关键字()。


参考答案:①系编号②无③学号④系编号

第9题:

下面的两个关系中,学号和班级号分别为学生关系和班级关系的主键(或称主码),则外键是( )。

学生(学号,姓名,班级号,成绩)

班级(班级号,班级名,班级人数,平均成绩)

A)学生关系的“学号”

B)班级关系的“班级号”

C)学生关系的“班级号”

D)班级关系的“班级名”


正确答案:C
根据外码的定义:设F是基本关系R的一个或一组属性,但不是关系R的主码,如果F与基本关系R主码相对应,则称F是基本关系R的外码。这里学生关系中的“班级号”是班级关系中的主码,但不是学生关系中的主码,而是学生关系的属性,因此学生关系中的“班级号”是外码。 

第10题:

检索每门课程的最高分,要求得到的信息包括课程名称、姓名和最高分,正确的SQL语句是( )。

A.SELECT 课程.课程名称,学生.姓名,MAX(成绩) AS 最高分; FROM 成绩,课程,学生; WHERE 成绩.课程编号=课程.课程编号; AND 成绩.学号=学生.学号; GROUP BY 课程编号

B.SELECT 课程.课程名称,学生.姓名,MAX(成绩) AS 最高分; FROM 成绩,课程,学生; WHERE 成绩.课程编号=课程.课程编号; AND 成绩.学号=学生.学号; GROUP BY 课程.课程编号

C.SELECT 课程.课程名称,学生.姓名,MAX(成绩) AS 最高分; FROM 成绩,课程,学生; WHERE 成绩.课程编号=课程.课程编号; AND 成绩.学号=学生.学号; ORDER BY 课程.课程编号

D.SELECT 课程.课程名称=学生.姓名,MAX(成绩) AS 最高分; FROM 成绩,课程,学生; WHERE 成绩.课程编号=课程.课程编号; AND 成绩.学号=学生.学号; ORDER BY 课程.课程编号


正确答案:B
解析:本题中首先通过GROUPBY短语将“课程”表中的记录按“课程编号”分组,然后通过MAX()函数求出每组中的最高成绩,即每门课程的最高成绩。由于查询输出结果涉及到多个表的字段,因此要使用连接查询,表之间的连接条件放在WHERE短语中,AND用来连接两个连接条件,以保证在查询的3个表之间建立联系。

更多相关问题