设有表示学生选课的三张表,学生表(学号,姓名,性别),课程表(课程号,课程名),选课成绩表(学号,课程号,成绩),则选课成绩表的关键字为( )。A)课程号,成绩B)学号,成绩C)学号,课程号D)学号,课程号,成绩

题目

设有表示学生选课的三张表,学生表(学号,姓名,性别),课程表(课程号,课程名),选课成绩表(学号,课程号,成绩),则选课成绩表的关键字为( )。

A)课程号,成绩

B)学号,成绩

C)学号,课程号

D)学号,课程号,成绩


相似考题
更多“设有表示学生选课的三张表,学生表(学号,姓名,性别),课程表(课程号,课程名),选课成绩表(学号,课程 ”相关问题
  • 第1题:

    设有学生表(学号,姓名,所在系名)和选课表(学号,课程号,成绩)。现要建立统计每个系选课人数的视图。请补全下列语句:CREATE VIEW Vl(系名,人数)AsSELECT所在系名,【4】 FROM选课表JOIN学生表ON选课表.学号=学生表.学号【5】


    正确答案:
    第一空:COUNT(DISTINCT选课表.学号)第二空:GROUP BY所在系名【解析】由于要统计选课人数所以要用到聚类函数COUNT(DISTINCTI ALL<列名>),表示对某列的值的计数,如果指定DISTINCT短语,则表示在计算时要取消指定列中的重复值。如果不指定DISTINCT短语或指定ALL短语,则表示保留重复值。由于是对不同系中的学生的学号统计,所以用GROUP BY子句将查询结果按某一列或多列的值分组,值相等的为一组。通过对组内不同学号的统计从而统计出各个系的选课人数。

  • 第2题:

    设有学生表S(学号,姓名,性别,年龄)、课程表C(课程号,课程名,学分)和学生选课表SC(学号,课程号,成绩),检索学号、姓名和学生所选课程的课程名和成绩,正确的SQL命令是______。

    A.SELECT 学号,姓名,课程名,成绩 FROM S,SC,C WHERE S.学号=SC.学号 AND SC.学号=C.学号

    B.SELECT 学号,姓名,课程名,成绩 FROM(S JOIN SC ON S.学号=SC.学号) JOIN C ON SC.课程号=C.课程号

    C.SELECT S.学号,姓名,课程名,成绩 FROM S JOIN SC JOIN C ON S.学号=SC.学号 ON SC.课程号=C.课程号

    D.SELECT S.学号,姓名,课程名,成绩 FROM S JOIN SC JOIN C ON SC.课程号=C.课程号 ON S.学号=SC.学号


    正确答案:D
    解析:此题是一个联接查询,联接查询是一种基于多个关系的查询。在SQL查询语句中建立两表间的连接可使用JOIN关键字连接其左右两个表名>所指的表,JOIN为普通连接,在Visual FoxPro中称为内部连接,即只有满足连接条件的记录才出现在查询结果中。用ON子句指定连接条件:也可以一次性在WHERE子句中指定连接条件和筛选条件。格式如下:
      SELECT 目标列表达式>
      FROM[[表名1>|视图名1>][[INNE]
      JOIN 表名2>|视图名1>]...ON连接条件>]...
      FROM[[数据库名>]owner>{表名>|视图名>}
      [,[[数据库名>.]owner>{表名>|视图名>}...
      [WHERE条件表达式>]
      [GROUP BY列名1>
      [HAVING内部函数表达式>]]
      [ORDER BY列名2> {ASC/DESC}]
    所以A、B选项错误,如果先连接学生表S和学生选课表SC,会造成结果中有不符合要求的多余记录,所以C选项错误。

  • 第3题:

    设学生表 S( 学号,姓名,性别,年龄 ) 、课程表 C( 课程号,课程名,学分 ) 和学生选课表 SC( 学号 , 课程号,成绩 ), 检索学号、姓名和学生所选课程的课程名和成绩 , 正确的 SQL 命令是

    A) SELECT 学号 , 姓名 , 课程名 , 成绩 FROM S,SC,C WHERE S. 学号 =SC. 学号 AND SC. 学号 =C. 学号

    B) SELECT 学号 , 姓名 , 课程名 , 成绩 FROM (S JOIN SC ON S. 学号 =SC. 学号) JOIN C ON SC. 课程号 =C. 课程号

    C) SELECT S. 学号 , 姓名 , 课程名 , 成绩 FROM S JOIN SC JOIN C ON S. 学号 =SC. 学号 ON SC. 课程号 =C. 课程 号

    D) SELECT S. 学号 , 姓名 , 课程名 , 成绩 FROM S JOIN SC JOIN C ON SC. 课程号 =C. 课程号 ON S. 学号 =SC. 学号


    正确答案:D

  • 第4题:

    拟建立如下的关系数据库及其基本表:

    数据库名:学生选课数据库

    学生表(学号,姓名,性别,年龄,专业)

    课程表(课程号,课程名,学分,先修课程号)

    选课表(ID, 学号,课程号,分数)

    用SQL语言实现下列的功能:

    1.创建数据库“学生选课数据库”代码;

    2. A.将下列课程信息添加到课程表的代码:

    B.修改 课程号为100003的课程名为“SQL数据库”;

    C.删除 课程号为100002的课程信息;

    3.检索姓张的女同学的情况:姓名、学号、专业。


    参考答案:(1)创建数据库“学生选课数据库”代码;
    create database [学生选课数据库]
    go
    use [学生选课数据库]
    go
    (2)
    insert 课程表 values('100002', '数据结构', 2, '100001')
    update课程表 set 课程名='SQL数据库'where 课程号='100003'
    delete课程表 where 课程号='100002'
    (3)
    select 姓名, 学号, 专业 from 学生表
    where 姓名 like '张%' and 性别='女'

  • 第5题:

    若要查询选修课(学号、课程号、成绩)成绩在80分以上的女生姓名,应使用的SELECT语句是______。

    A.SELECT姓名FROM学生表,选课表WHERE学生表.学号=选课表.学号;.OR.性别="女".AND.成绩>=80

    B.SELECT姓名FROM学生表,选课表WHERE学生表.学号=选课表.学号;.AND.性别:"女".OR.成绩>=80

    C.SELECT姓名FROM学生表,选课表WHERE学生表.学号=选课表.学号;.OR.性别="女".OR.成绩>=80

    D.SELECT姓名FROM学生表,选课表WHERE学生表.学号=选课表.学号;.AND.性别:"女".AND.成绩>=80


    正确答案:D

  • 第6题:

    检索还未确定成绩的学生选课信息,正确的SQL命令是( )。

    A.SELECT学生.学号,姓名,选课.课程号FROM学生JOIN选课 WHERE学生.学号=选课.学号AND选课.成绩IS NULL

    B.SELECT、学生.学号,姓名,选课.课程号FROM学生JOIN选课 WHERE学生.学号=选课.学号AND选课.成绩=NULL

    C.SELECT学生.学号,姓名,选课.课程号FROM学生JOIN选课 ON学生.学号=选课.学号WHERE选课.成绩IS NULL

    D.SELECT学生.学号,姓名,选课.课程号FROM学生JOIN选课 ON学生.学号=选课.学号WHERE选课.成绩=NULL


    正确答案:C
    解析:inner join on表示内链接,内链接是通过比较源表间共享的列的值从多个源表检索行的操作。内联接排除来自不具有与其它源表中的行匹配的行的源表的行。

  • 第7题:

    检索还未确定成绩的学生选课信息,正确的SQL命令是( )。

    A.SELECT学生.学号,姓名,选课.课程号FROM学生JOIN选课 WHERE学生.学=选课.学号AND选课.成绩IS NULL

    B.SELECT学生.学号,姓名,选课.课程号FROM学生JOIN选课 WHERE学生.学号=选课.学号AND选课.成绩=NULL

    C.SELECT学生.学号,姓名,选课.课程号FROM学生JOIN选课 ON学生.学号=选课.学号WHERE选课.成绩IS NULL

    D.SELECT学生.学号,姓名,选课.课程号FROM学生JOIN选课 ON学生.学号=选课.学号WHERE选课.成绩=NULL


    正确答案:C
    C。【解析】INNERJOINON表示内链接,内链接是通过比较源表间共享的列的值从多个源表检索行的操作。内链接排除来自不具有与其他源表中的行匹配的行的源表的行。

  • 第8题:

    查询选修课程号为"101"课程得分最高的同学,正确的SQL语句是

    A.SELECT学生.学号,姓名FROM学生,选课WHERE学生.学号=选课.学号 AND课程号="101”AND成绩>=ALL(SELECT成绩FROM选课)

    B.SELECT学生.学号,姓名FROM学生,选课WHERE学生.学号;选课.学号 AND成绩>=ALL(SELECT成绩FROM选课WHERE课程号="101")

    C.SELECT学生.学号,姓名FROM学生,选课WHERE学生.学号二选课.学号 AND成绩>=ANY(SELECT成绩FROM选课WHERE课程号="101")

    D.SELECT学生.学号,姓名FROM学生,选课WHERE学生.学号=选课.学号AND课程号="101" AND成绩>=ALL(SELECT成绩FROM选课WHERE课程号 ="101")


    正确答案:D
    解析:本题所给出的四个选项中:
      选项A中的子查询并没有限定选择“课程号”为“101”,则此命令选择出来的结果是“101”课程得分大于等于所有科目成绩的记录,如果其余课目的成绩有记录大于“101”科目的最高成绩,则此查询无结果,此选项错误。选项B中的查询并没有限定选择“课程号”为“101”,则此命令选择出来的结果是所有课程得分大于等于所有“101”科目成绩的记录,如果其余课目的成绩有记录大于“101”科目的最高成绩,则此查询将查询出错误结果,此选项错误。
      选项C中的查询并没有限定选择“课程号”为“101”,则此命令选择出来的结果是所有课程得分大于等于任意“101”科目成绩的记录,此查询将杳询出错误结果,此选项错误。
      选项D符合题意,将查询出正确结果,故为正确答案。

  • 第9题:

    根据题意要求,完成下列查询 设有如下学生课程数据库,它包括学生关系、课程关系和选课关系,其关系模式为: 学生(学号,姓名,年龄,性别,民族,专业,年级); 课程(课程号,课程名,教师,总学分); 选课(学号,课程号,成绩)。 1、查询学生表中全部信息。


    正确答案:select * from 学生 (1分)

  • 第10题:

    设有学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程C(课号,课名),选课SC(学号,课号,成绩),则表SC的关键字为()

    • A、课号,成绩
    • B、学号,成绩
    • C、学号,课号
    • D、学号,姓名,成绩

    正确答案:C

  • 第11题:

    单选题
    设有学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程C(课号,课名),选课SC(学号,课号,成绩),则表SC的关键字为()
    A

    课号,成绩

    B

    学号,成绩

    C

    学号,课号

    D

    学号,姓名,成绩


    正确答案: C
    解析: 暂无解析

  • 第12题:

    单选题
    查询选修课程号为“101”课程得分最高的同学,正确的SQL语句是(  )。
    A

    SELECT学生.学号,姓名FROM学生,选课WHERE学生.学号=选课.学号AND课程号=101AND成绩>=ALL(SELECT成绩FROM选课)

    B

    SELECT学生.学号,姓名FROM学生,选课WHERE学生.学号=选课.学号AND成绩>=ALL(SELECT成绩FROM选课WHERE课程号=101)

    C

    SELECT学生.学号,姓名FROM学生,选课WHERE学生.学号=选课.学号AND成绩>=ANY(SELECT成绩FROM选课WHERE课程号=101)

    D

    SELECT学生.学号,姓名FROM学生,选课WHERE学生.学号=选课.学号AND课程号=101AND成绩>=(SELECT成绩FROM选课WHERE课程号=101)


    正确答案: A
    解析:
    ALL表示所有子查询中的所有行都使结果为真时,结果才为真;而ANY表示子查询中有一行能使结果为真,则结果就为真,要求查询选修课程号为“101”的课程得分最高的同学,应用条件短语:成绩>=ALL(SELECT成绩FROM选课WHERE课程号="101")。

  • 第13题:

    设有表示学生选课的3张表,学生S(学号,姓名,性别,年龄,身份证号),课程 C(课号,课名),选课SC(学号,课号,成绩),则表SC的关键字(键或码)为 ( )。

    A.课号,成绩

    B.学号,成绩

    C.学号,课号

    D.学号,姓名,成绩


    正确答案:C
    解析:关键字是指属性或属性的组合,其值能够惟一地标识一个元组,而在SC中学号和课号的组合可以对元组进行惟一的标识。

  • 第14题:

    查询选修课程号为“101”课程得分最高的同学,正确的SQL语句是 ______。

    A.SELECT 学生.学号,姓名FROM 学生,选课WHERE 学生.学号=选课.学号 AND 课程号=“101” AND 成绩>=ALL (SELECT 成绩 FROM 选课)

    B.SELECT 学生.学号,姓名FROM 学生,选课 WHERE 学生.学号=选课.学号 AND 成绩>=ALL(SELECT 成绩 FROM 选课 WHERE 课程号=“101”)

    C.SELECT 学生. 学号,姓名 FROM 学生,选课 WHERE 学生. 学号=选课.学号 AND 成绩>=ANY (SELECT 成绩 FROM 选课 WHERE 选课号=“101”)

    D.SELECT 学生.学号,姓名 FROM 学生,选课 WHERE 学生.学号=选课.学号 AND 课程号=“101”AND 成绩>= ALL(SELECT 成绩 FROM 选课 WHERE课程号=“101”)


    正确答案:D
    解析:选项A中的子查询并没有限定选择“课程号”为“101”,则此命令选择出来的结果是“101”课程得分大于等于所有科目成绩的记录,如果其余课目的成绩有记录大于“101”科目的最高成绩,则此查询无结果,此选择错误。
    选项B中的查询并没有限定选择“课程号”为“101”,则此命令选择出来的结果是所有课程得分大于等于所有“101”科目成绩的记录,如果其余课目的成绩有记录大于“101”科目的最高成绩,则此查询将查询出错误结果,此选项错误。
    选项C中的查陶并没有限定选择“课程号”为“101”,则此命令选择出来的结果是所有课程得分大于等于任意“101”科目成绩的记录,此查询将查询出错误的结果,此选项错误。

  • 第15题:

    设学生表和成绩表的结构分别为(学号,姓名,所在系)和(学号,课程名,成绩),如果希望按分数降序查询出“英语系中选修了计算机课程的学生姓名和成绩”,则对应的SQL语句是()。

    A. SELECT姓名,成绩FROM学生表,成绩表WHERE所在系一‘英语系’AND课

    程名=‘计算机’AND学生表.学号=课程表,学号

    B. SELECT姓名,成绩FROM学生表,成绩表WHERE所在系=‘英语系’AND课

    程名=‘计算机’AND学生表.学号=课程表.学号ORDER BY成绩ASC

    C. SELECT姓名,成绩FROM学生表,成绩表WHERE所在系=‘英语系’AND课

    程名=计算机’AND学生表。学号=课程表。学号ORDER BY成绩

    D. SELECT姓名,成绩FROM学生表,成绩表WHERE所在系=‘英语系’AND课

    程名=‘计算机’AND学生表.学号一课程表.学号ORDER BY成绩DESC


    参考答案D

  • 第16题:

    设有表示学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程C(课号,课名),Q选课SC(学号,课号,成绩),则表SC的关键字(键或码)为( )。

    A.课号,成绩

    B.学号,成绩

    C.学号,课号

    D.学号,姓名,成绩


    正确答案:C
    解析:关键字是指属性或属性的组合,其值能够唯一地标识一个元组,而在SC中学号和课号的组合可以对元组进行唯一的标识。

  • 第17题:

    学生(学号(C,8),姓名(C,6),性别(C,2),出生日期(D))选课(学号(C,8),课程号(C,3),成绩(N,5,1)) 查询选修课程号为“007”课程得分最高的学生,正确的SQL语句是( )。

    A. SELECT学生.学号,姓名FROM学生,选课WHERE学生.学号=选课.学号 AND课程号=”007”AND成绩 >=ALL(SELECT成绩FROM选课)

    B. SELECT学生.学号,姓名FROM学生,选课WHERE学生.学号=选课.学号 AND成绩 >=ALL(SELECT成绩FROM选课WHERE课程号=”007”)

    C. SELECT学生.学号,姓名FROM学生,选课WHERE学生.学号=选课.学号 AND成绩 >=ANY(SELECT成绩FROM选课WHERE课程号=”007”)

    D. SELECT学生.学号,姓名FROM学生,选课WHERE学生.学号=选课.学号AND 课程号=”007”AND成绩>=ALL(SELECT成绩FROM选课WHERE课程号=”007”)


    正确答案:D
    所有选项都是通过嵌套查询来实现题目的要求,因此来看关键字:ALL要求子查询中的所有行结果为真,结果才为真;ANY只要子查询中有一行能使结果为真,则结果就为真。最高分应该为成绩>=ALL(…),要查询选课号为“007”的同学,所以内外查询中都要用到条件:课程号=”007”。

  • 第18题:

    设有以下3个表: 学生表STUD(学号,姓名,性别,年龄,专业) 课程表KC(课程号,课程名,选修课号,学分) 学生选课表SC(学号,课程号,成绩) 查询选修了课程名为“数据结构”的学生的姓名的SELECT语句是______。

    A.SELECT 姓名 FROM STUD; WHERE学号SELECT学号FROM SC WHERE 课程号IN; (SELECT课程号FROM KC WHERE 课程名=“数据结构”)

    B.SELECT姓名FROM STUD; WHERE学号IN(SELECT学号FROM SC WHERE 课程号UNION; (SELECT 课程号 FROM KC WHERE 课程名=“数据结构”))

    C.SELECT 姓名 FROM STUD; WHERESELECT课程号FROMKCWHERE课程名=“数据结构”

    D.SELECT姓名FROM STUD; WHERE 学号 IN(SELECT 学号 FROM SC WHERE 课程号 IN; (SELECT课程号FROM KC WHERE 课程名=“数据结构”))


    正确答案:D
    解析:要实现本题的查询要求,需使用嵌套查询。嵌套查询又称为子查询,它可以把一个SELECT-FROM-WHERE查询块嵌入在另一个查询块中。嵌套查询是由内向外进行的。在嵌套查询中,常用谓词IN引导子查询。选项A、B、C的语句不符合嵌套查询的语法结构,只有选项D正确。

  • 第19题:

    设有表示学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程C(课程号,课名),选课SC(学号,课号,成绩),则表SC的关键字(键或码)为

    A.课号,成绩

    B.学号,成绩

    C.学号,课号

    D.学号,姓名,成绩


    正确答案:C
    解析:“选课表”SC是“学生表”S和“课程表”C的映射表,主键是两个表主键的组合。

  • 第20题:

    学生:S(学号,姓名,性别,出生日期,院系)

    课程表:C(课程号,课程名,学时)

    选课成绩表:SC(学号,课程号,成绩)

    在上述表中,出生日期数据类型为日期型,学时和成绩为数值型,其他均为字符型。


    正确答案:A
    本题要用内、外层互相嵌套的方式进行查询。内查询NOTEXISTS(SELECT*FROMSCWHERESC.学号=S.学号AND成绩85)表示的含义是选课成绩表SC中不存在成绩小于85的记录,反过来说,就是成绩都高于或等于85分的记录。外查询SELECT学号.姓名FROMS表示的含义是从学生表S中查询学号、姓名,所以选项A正确。选项B的意思刚好与本题的要求相反;选项C、D写法错误。

  • 第21题:

    设学生表和课程表的结构分别为(学号,姓名)和(学号,课程号,成绩),如果希望查询出“成绩大于90分的学生姓名”,则对应的SQL语句是()。

    ASELECT 姓名 FROM 学生表 WHERE 学生表.学号=课程表.学号 AND 课程表.成绩>90

    BSELECT 姓名 FROM 课程表 WHERE学生表.学号=课程表.学号 AND 课程表.成绩>90

    CSELECT 姓名 FROM 学生表,课程表 WHERE 学生表.学号=课程表.学号 OR 课程表.成绩>90

    DSELECT 姓名 FROM 学生表,课程表 WHERE 学生表.学号=课程表.学号 AND 课程表.成绩>90


    D

  • 第22题:

    单选题
    假设成绩字段的默认值是空值,检索还未确定成绩的学生选课信息,正确的SQL命令是(  )。
    A

    SELECT学生.学号,姓名,选课.课程号FROM学生JOIN选课WHERE学生.学号=选课.学号AND选课.成绩IS NULL

    B

    SELECT学生.学号,姓名,选课.课程号FROM学生JOIN选课WHERE学生.学号=选课.学号AND选课.成绩=NULL

    C

    SELECT学生.学号,姓名,选课.课程号FROM学生JOIN选课ON学生.学号=选课.学号WHERE选课.成绩IS NULL

    D

    SELECT学生.学号,姓名,选课.课程号FROM学生JOIN选课ON学生.学号=选课.学号WHERE选课.成绩=NULL


    正确答案: D
    解析:
    超连接查询有4种连接方式,其基本格式为:SELECT…FROM左表INNER|LEFT|RIGHT|FULLJOIN右表ON连接条件WHERE其他条件。要检索还未确定成绩的学生选课信息,应使用IS NULL。

  • 第23题:

    单选题
    设学生表S(学号,姓名,性别,年龄),课程表C(课程号,课程名,学分)和学生选课表SC(学号,课程号,成绩),检索学号、姓名和学生所选课程名及成绩,正确的SQL命令是(  )。
    A

    SELECT学号,姓名,课程名,成绩FROM S,SC,C
    WHERE S.学号=SC.学号AND SC.学号=C.学号

    B

    SELECT学号,姓名,课程名,成绩
    FROM(S JOIN SC ON S.学号=SC.学号)JOIN C ON SC.课程号=C.课程号

    C

    SELECT S.学号,姓名,课程名,成绩
    FROM S JOIN SC JOIN C ON S.学号=SC.学号ON SC.课程号=C.课程号

    D

    SELECT S.学号,姓名,课程名,成绩
    FROM S JOIN SC JOIN C ON SC.课程号=C.课程号ON S.学号=SC.学号


    正确答案: A
    解析:
    这是一个简单查询语句,用WHERE短语将三个表连接起来。JOIN为超连接查询。