单选题
(31)到(35)题中使用下列数据表。 “学生”表:学号C(8),姓名C(8),性别C(2),系名(6) “课程”表:课程编号C(4),课程名称C(12),开课系名C(10) “成绩”表:学号C(8),课程编号C(4),成绩N(6,2)
单选题
检索每门课程的最高分,要求得到的信息包括课程名称、姓名和最高分,正确的命令是( )。
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
【答案解析】 [解析] 本题中首先通过GROUP BY短语将“课程”表中的记录按“课程编号”分组,然后通过MAX()函数求出每组中的最高成绩,即每门课程的最高成绩,由于查询输出结果涉及到多个表的字段,因此要使用连接查询,表之间的连接条件放在WHERE短语中,AND用来连接两个连接条件,以保证在查询的3个表之间建立联系。
单选题
为“课程”表中定义“开课系名”字段的默认值为“中文”,正确的命令是( )。
【正确答案】
B
【答案解析】 [解析] 利用SQL命令可以对基本表的结构进行修改,利用以下命令可以修改表结构、定义有效性规则: ALTER TABLE <表名> ALTER [CULUMN]<字段名1>[NULL|NOT NULL] [SET DEFAULT<表达式>] [SET CHECK <逻辑表达式>[ERROR <字符型文本信息>]] |[RENAME COLUMN<字段名2>TO<字段名3>] 其中,SET DEFAULT<表达式>可以用来指定字段的默认值。注意:表达式值的类型要与字段类型一致。
单选题
查询所有选修了“计算机网络”的学生成绩,结果显示该学生的“姓名”、“系名”和“数据库原理”的“成绩”,并按成绩由高到低的顺序排列,下列语句正确的是( )。
A、
SELECT 学生.姓名,学生.系名,成绩.成绩 FROM 学生,课程,成绩; FOR 学生.学号=成绩.学号; AND 课程.课程编号=成绩.课程编号; AND 课程.课程名称="计算机网络"; ORDER BY 成绩.成绩 DESC
B、
SELECT 学生.姓名,学生.系名,成绩.成绩 JOIN 学生,课程,成绩; ON 学生.学号=成绩.学号; ON 课程.课程编号=成绩.课程编号; AND 课程.课程名称="计算机网络"; ORDER BY 成绩.成绩 DESC
C、
SELECT 学生.姓名,学生.系名,成绩.成绩 FROM 学生,课程,成绩; WHERE 学生.学号=成绩.学号; OR 课程.课程编号=成绩.课程编号; OR 课程.课程名称="计算机网络"; ORDER BY 成绩.成绩 DESC
D、
SELECT 学生.姓名,学生.系名,成绩.成绩 FROM 学生,课程,成绩; WHERE 学生.学号=成绩.学号; AND 课程.课程编号=成绩.课程编号; AND 课程.课程名称="计算机网络"; ORDER BY 成绩.成绩 DESC
【正确答案】
D
【答案解析】 [解析] 本题是一个多表连接查询的SQL语句,关键要注意表间连接条件的使用,如果使用超连接方式查询,则正确的语句格式为: SELECT... FROM<数据库表 1>INNER JOIN<数据库表 2> ON<连接条件> WHERE...... 其中,INNER JOIN等价于JOIN,为普通的连接,在Visual FoxPro中称为内部连接:ON<连接条件>指定两个进行表连接的条件字段。 如果使用的是普通的连接方式,则只需在FROM短语中指定查询的数据表,各表名之间用逗号隔开,而各表之间的连接放在 WHERE短语后面,设计两个连接条件时,用AND短语连接这两个条件。
单选题
将“学生”表中“系名”字段的宽度由原来的6改为10,正确的命令是( )。
【正确答案】
C
【答案解析】 [解析] 利用SQL命令可以对基本表的结构进行修改,利用以下命令可以修改表中字段的相关属性: ALTER TABLE <表名> ALTER [[COLUMN]<字段名 1><字段类型>[(<长度>[,<小数位数>])] 本题中选项A)、B)、D)中在修改表字段宽度时,所使用的命令短语都是错误的,属于语法错误。
单选题
在已打开数据库的情况下,利用SQL派生一个包含姓名、课程名称和成绩字段的 xsview视图,正确的命令是( )。
【正确答案】
D
【答案解析】 [解析] 利用SQL命令可以定义直接建立视图,命令格式如下: CREATE VIEW 视图名 AS; SELECT 语句 本题中要注意的是在定义视图时,SELECT语句部分不需要用括号括起来,在进行超连接查询时,可使用的SQL命令格式如下: SELECT...... FROM <数据库表 1> INNER JOIN<数据库表 2> ON <连接条件> WHERE...... 其中,INNER JOIN等价于JOIN,为普通的连接,在Visual FoxPro中称为内部连接;ON <连接条件>指定两个进行表连接的条件字段。 注意,连接类型在FROM于句中给出,并不是在WHERE子句中,连接条件在ON子句中给出。
提交答案
关闭