有学生(学号,姓名,性别)和成绩(学号,课程名称,分数)两个表,若在建立学生与成绩一对多联系时,选择的联系类型是:包括″学生″中的所有记录和″成绩″中联接字段相等的那些记录,则数据之间关联方式是()A、内部联接B、全外部联接C、左外部联接D、右外部联接

题目

有学生(学号,姓名,性别)和成绩(学号,课程名称,分数)两个表,若在建立学生与成绩一对多联系时,选择的联系类型是:包括″学生″中的所有记录和″成绩″中联接字段相等的那些记录,则数据之间关联方式是()

  • A、内部联接
  • B、全外部联接
  • C、左外部联接
  • D、右外部联接
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

利用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短语的功能是对记录进行分组。

第2题:

查询所有选修了“计算机基础”的学生的“计算机基础”成绩,要求得到的信息包括学生姓名和成绩,并按成绩由高到低的顺序排列,下列语句正确的是

A.SELECT学生.姓名,成绩.成绩FROM学生,成绩; WHERE学生.学号=成绩.学号; AND课程.课程名称=‘计算机基础’; ORDER BY成绩.成绩DESC

B.SELECT学生.姓名,成绩.成绩FROM课程,成绩; WHERE AND课程.课程编号=成绩.课程编号; AND课程.课程名称=‘计算机基础’; ORDER BY成绩.成绩DESC

C.SELECT学生.姓名,成绩.成绩FROM学生,课程,成绩; WHERE学生.学号=成绩.学号; AND课程.课程编号=成绩.课程编号; AND课程.课程名称=‘计算机基础’; GROUP BY成绩.成绩DESC

D.SELECT学生.姓名,成绩.成绩FROM学生,课程,成绩; WHERE学生.学号=成绩.学号; AND课程.课程编号=成绩.课程编号; AND课程.课程名称=‘计算机基础’; ORDER BY成绩.成绩DESC


正确答案:D
解析:本小题为多表联接查询,注意每两个表之间进行关联的关键字,利用ORDER BY短语可以对查询结果进行排序,降序关键字为DESC。 选项A)和选项B)中缺少数据表文件。选项C)中,GROUP BY短语使用错误,将查询结果进行排序的短语是ORDER BY。掌握和理解SQL分组查询语句的格式及功能。

第3题:

(1)使用“Modify Command”命令建立程序“cx1”,查询数据库“学生管理”中选修了3门(含3)以上课程的学生的全部信息,并按“学号”升序排序,将结果存放于表“result”中。(2)使用“一对多报表向导”建立报表“rpt1”。要求:父表为“学生”,子表为“成绩”。从父表中选择字段“学号”和“姓名”。从子表中选择字段“课程编号”和“成绩”,两个表通过“学号”建立联系,报表样式选择“账务式”,方向为“横向”,按“学号”升序排序,报表标题为“学生成绩浏览”。


正确答案:
【考点指引】本大题第1小题考查的是SQL SELECT语句的用法:第2小题考查的是一对多报表向导的使用,按句导提示还步操作即可。
(1)【操作步骤】
①在命令窗口中输入命令:MODI COMM cxl(回车执行),打开程序文件编辑窗口,在程序文件编辑窗口中输入以下程序代码:
SELECT*INTO TABLE result FROM学生WHERF学号IN(SELECT学号FROM成绩GROUP BY学号HAVING COUNT(*)>=3)ORDER BY学号
关闭程序文件编辑窗口并保存程序文件。
②在命令窗口中输入命令:DO cxl(回车执行),执行程序文件。
(2)【操作步骤】
①选择【文件】→【新建】命令,选择“报表”,单击“向导”按钮打开“向导选取”窗口,选择“一对多报表向导”,单击“确定”按钮进入“一对多报表向导”对话框。
②在“一对多报表向导”对话框中,选择“数据库和表”列表框中的“学生”作为父表,从“可用字段”列表框中将“学号”和“姓名”字段添加到右边的“选定字段”列表框中,用做父表的可用字段。
③单击“下一步”设计子表的可用字段,选择“数据库和表”列表框中的“成绩”作为子表,从“可用字段”列表框中的“课程编号”和“成绩”字段添加到“选定字段”列表框中。
④单击“下一步”进入“为表建立关系”的设计界面,在此处系统已经默认设置好进行关联的字段:父表学生的“学号”和子表成绩的“学号”字段。
⑤单击“下一步”进入“排序记录”的设计界面,将“可用字段或索引标识”列表框中的“学号”字段添加到右边的“选定字段”列表框中,并选择“升序”单选项。
⑥单击“下一步”进入“选择报表样式”的界面,在“样式”列表框中选择“账务式”,在“方向”选项组中选择“横向”。
⑦单击“下一步”,进入最后的“完成”设计界面,在“报表标题”文本框中输入“学生成绩浏览”作为报表添加标题,单击“完成”命令按钮,在系统弹出的“保存为”对话框中,将报表以“rptl”文件名保存在考生文件夹下,退出报表设计向导。

第4题:

当前目录下有“学生”表和“成绩”表两个文件,要求查找同时选修了“课程名称”为“计算机”和“英语”的学生姓名,下列SQL语句的空白处应填入的语句为( )。

SELECT姓名FROM学生,成绩;

WHERE学生.学号=成绩.学号;

AND课程名称=”计算机”;

AND姓名__;

(SELECT姓名FROM学生,成绩;

WHERE学生.学号=成绩.学号;

AND课程名称=”英语”)


正确答案:C
本小题为SQL.,的嵌套查询,通过内层查找符合条件的记录集合,再通过外层查询检索该集合中相同的记录值,使用的特殊运算符为IN(包含运算)。ANY、ALL和SOME是量词,其中ANY和SOME是同义词,在进行比较运算时只要子查询中有一行能使结果为真,则结果为真;而ALL则要求子查询中的所有行都使结果为真时,结果才为真。EXISTS是谓词,EXISTS和NOTEXISTS是用来检查在子查询中是否有结果返回(即存在元组或不存在元组)。

第5题:

回答下列各题: 基于学生表S和学生选课表SC两个数据库表,它们的结构如下: S(学号,姓名,性别,年龄),其中学号、姓名和性别为C型字段,年龄为N型字段; SC(学号,课程号,成绩),其中学号和课程号为C型字段,成绩为N型字段。 {TS}查询学生选修课程成绩75分以上的学生学号,正确的SQL语句是( )。

A. SELECT DISTINCT学号FROM SC WHERE”成绩”>75

B. SELECT DISTINCT学号FROM SC WHERE成绩>75

C. SELECT DISTINCT学号FROM SC WHERE成绩>”75”

D. SELECT DISTINCT”学号”FROM SC WHERE”成绩”>75


正确答案:B
在WHERE条件中成绩不需要用引号括起来,因此A和D排除,成绩是数值型字段,因此750也不需要加双引号,故选项C也错误。

第6题:

在已打开数据库的情况下,利用SQL派生一个包含姓名、课程名称和成绩字段的xsview视图,正确的语句是( )。

A.CREATE VIEW xsview AS; SELECT 学生.姓名,课程.课程名称,成绩,成绩; FROM 学生 INNER JOIN 成绩; INNER JOIN 课程; WHERE 成绩.课程编号=课程.课程编号; AND 学生.学号=成绩.学号

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

C.CREATE VIEW xsview AS; SELECT 学生.姓名,课程.课程名称,成绩.成绩; WHERE 学生 INNER JOIN 成绩; INNER JOIN 课程; ON 成绩.课程编号=课程.课程编号; ON 学生.学号=成绩.学号

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


正确答案: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子句中给出。

第7题:

使用如下三个数据库表: 学生(学号C(8),姓名C(8),性别C(2),班级C(8)) 课程(课程编号C(8),课程名称C(20)) 成绩(学号C(8),课程编号C(8),成绩N(5,1)) 查询所有选修了“高等数学”的学生的“相关”成绩,要求信息中包括学生姓名和成绩,并按成绩由低到高的顺序排列,下列语句正确的是( )。

A. SELECT学生.姓名,成绩.成绩FROM学生,成绩; WHERE学生.学号=成绩.学号; AND课程.课程名称=’高等数学’; ORDER BY成绩.成绩ASC

B. SELECT学生.姓名,成绩.成绩FROM课程,成绩; WHERE AND课程.课程编号=成绩.课程编号; AND课程.课程名称=’高等数学’; ORDER BY成绩.成绩ASC

C. SELECT学生.姓名,成绩.成绩FROM学生,课程,成绩; WHERE学生.学号=成绩.学号; AND课程.课程编号=成绩.课程编号; AND课程.课程名称=’高等数学’; GROUP BY成绩.成绩ASC

D. SELECT学生.姓名,成绩.成绩FROM学生,课程,成绩; WHERE学生.学号=成绩.学号; AND课程.课程编号=成绩.课程编号; AND课程.课程名称=’高等数学’; ORDER BY成绩.成绩ASC


正确答案:D
本小题为多表连接查询,注意每两个表之间进行关联的关键字,利用ORDER BY短语可以对查询结果进行排序,升序关键字为ASC。选项A和选项B中缺少数据表文件。选项C中,GROUP BY短语使用错误,将查询结果进行排序的短语是0RDER BY。

第8题:

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

A.并

B.交

C.乘积

D.连接


正确答案:D

第9题:

第下列各题中使用如下数据表。 “学生”表:学号C(8),姓名C(8),性别c(2),系名(6) “课程”表:课程编号C(4),课程名称c(12),开课系名C(10) “成绩”表:学号c(8),课程编号c(4),成绩N(6,2) 检索每门课程的最高分,要求得到的信息包括课程名称、姓名和最高分,正确的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
本题中首先通过GROUl’BY短语将“课程”表中的记录按“课程编号”分组,然后通过MAX函数求出每组中的最高成绩,即每门课程的最高成绩。由于查询输出结果涉及多个表的字段,因此要使用连接查询,表之间的连接条件放在WHERE短语中,AND用来连接两个连接条件,以保证在查询的三个表之间建立联系。

第10题:

在VisualFoxPro中,表与表之间的联接有物理联接和______。

A.内部联接

B.外部联接

C.逻辑联接

D.完全联接


正确答案:C

更多相关问题