现有关系数据库如下:学生(学号,姓名,性别,专业、奖学金),课程(课程号,课程名,学分),选课(学号,课程号,分数),用SQL语言实现题目:检索没有任何一门课程成绩在80分以下的所有学生的信息,包括学号、姓名和专业,正确的SQL语句是_____。A.SELECT 学号,姓名,专业 FROM 学生 WHERE 学号 NOT IN (SELECT 学号 FROM 选课 WHERE 分数<80)B.SELECT 学号,姓名,专业 FROM 学生,选课 WHERE 学号 NOT IN (SELECT 学号 FRO

题目

现有关系数据库如下:学生(学号,姓名,性别,专业、奖学金),课程(课程号,课程名,学分),选课(学号,课程号,分数),用SQL语言实现题目:检索没有任何一门课程成绩在80分以下的所有学生的信息,包括学号、姓名和专业,正确的SQL语句是_____。

A.SELECT 学号,姓名,专业 FROM 学生 WHERE 学号 NOT IN (SELECT 学号 FROM 选课 WHERE 分数<80)

B.SELECT 学号,姓名,专业 FROM 学生,选课 WHERE 学号 NOT IN (SELECT 学号 FROM 选课 WHERE 分数<80)

C.SELECT 学号,姓名,专业 FROM 学生,选课 WHERE 学号 IN (SELECT 学号 FROM 选课 WHERE 分数<80)

D.SELECT 学号,姓名,专业 FROM 学生 WHERE 学号 IN (SELECT 学号 FROM 选课 WHERE 学生.学号=选课.学号 AND分数<80)


相似考题
参考答案和解析
D
更多“现有关系数据库如下:学生(学号,姓名,性别,专业、奖学金),课程(课程号,课程名,学分),选课(学号,课程号,分数),用SQL语言实现题目:检索没有任何一门课程成绩在80分以下的所有学生的信息,包括学号、姓名和专业,正确的SQL语句是_____。”相关问题
  • 第1题:

    已知表student(学号,姓名,性别,出生日期,专业)

    course(课程号,课程名,学时数,学分)

    grade(学号,课程号,成绩)、

    试在所有学生的课程成绩中列出课程成绩最高的学生姓名、专业、课程名和成绩.


    正确答案:

    SELECT姓名,专业,课程名,成绩
    FROMstudent,grade,course
    WHERE成绩IN(SELECT MAX(grade.成绩)
    FROMgrade)ANDstudent.学号=grade.学号
    ANDcourse.课程号=grade.课程号;

  • 第2题:

    设有如图所示的E-R模型:

    将上述E-R模型转换成关系模式,正确的结果应是

    A.成绩(学号,姓名,年龄,性别,课程号,课程名,学时,分数)

    B.学生(学号,姓名,年龄,性别,分数)、课程(课程号,课程名,学时)

    C.学生(学号,姓名,年龄,性别)、课程(课程号,课程名,学时,分数)

    D.学生(学号,姓名,年龄,性别)、课程(课程号,课程名,学时)、成绩(学号,课程号,分数)


    正确答案:D
    解析:本题考查E-R模型转换成关系模式的过程。E-R模型可以向现有的多种数据库模型转换,对不同的数据库模型有不同的转换规则。向关系模型转换的规则是:一个实体类型转换成一个关系模式,实体的属性就是关系的属性,实体的码就是关系的码。对于实体间的关系则有:一个1:1联系可以转换为一个独立的关系模型;一个1:n的联系可以转换为一个独立的关系模型,也可以与联系的任意n端实体所对应的关系模式合并;一个m: n的联系转换为一个关系模式。题目给出的E-R模型包含两个实体:学生和课程,包含一个m: n的联系,应该转换为一个关系模式。正确答案为选项D。

  • 第3题:

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

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

    B.SELECT学号,姓名,课程名,成绩 FROM(S JOIN SC ON S.学号=SC.学号)JOIN C0N 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
    D。【解析】连接查询中JOIN用来连接两个表,而ON是指定两表连接的关键字。

  • 第4题:

    学生(学号(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”。

  • 第5题:

    检索还未确定成绩的学生选课信息,正确的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表示内链接,内链接是通过比较源表间共享的列的值从多个源表检索行的操作。内链接排除来自不具有与其他源表中的行匹配的行的源表的行。

  • 第6题:

    查询选修课程号为"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符合题意,将查询出正确结果,故为正确答案。

  • 第7题:

    某学校的教学信息关系数据库中有如下两个表:

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

    成绩表(学号,课程名,分数)

    用SQL语句表达下述查询:

    (a)检索分数高于80分的所有学生的学号和分数。

    (b)检索选修了“高等数学”课程的所有学生的学号。


    正确答案:
    SELECT学号,分数FROM成绩表WHERE分数>80
    SELECT学号FROM成绩表WHERE课程名='高等数学'

  • 第8题:

    设教学数据库中有四个关系: 教师(教师编号,教师姓名,联系电话) 课程(课程号,课程名,教师编号) 学生(学号,学生姓名,年龄,性别,专业) 选课(学号,课程号,成绩)检索所有姓“李”的学生的姓名和年龄。


    正确答案:Select 学生姓名,年龄 from 学生 where 学生姓名 like ‘李%’

  • 第9题:

    设教学数据库中有四个关系: 教师(教师编号,教师姓名,联系电话) 课程(课程号,课程名,教师编号) 学生(学号,学生姓名,年龄,性别,专业) 选课(学号,课程号,成绩)查询所有姓王的教师所授课程的课程号和成绩(按课程号排序)。


    正确答案:Select 选课.课程号,成绩 from 教师,课程,选课 where 教师姓名 like ‘王%’
    And 教师.教师编号=课程.教师编号 and 课程.课程号=选课.课程号 Order by 课程号

  • 第10题:

    单选题
    假设成绩字段的默认值是空值,检索还未确定成绩的学生选课信息,正确的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。

  • 第11题:

    单选题
    查询选修课程号为“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")。

  • 第12题:

    问答题
    设教学数据库中有四个关系: 教师(教师编号,教师姓名,联系电话) 课程(课程号,课程名,教师编号) 学生(学号,学生姓名,年龄,性别,专业) 选课(学号,课程号,成绩)查询所有姓王的教师所授课程的课程号和成绩(按课程号排序)。

    正确答案: Select 选课.课程号,成绩 from 教师,课程,选课 where 教师姓名 like ‘王%’
    And 教师.教师编号=课程.教师编号 and 课程.课程号=选课.课程号 Order by 课程号
    解析: 暂无解析

  • 第13题:

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

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

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

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

    选课表(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 性别='女'

  • 第14题:

    有如下关系数据库:

    学生(学号,姓名,性别,专业、奖学金)

    课程(课程号,名称,学分)

    学习(学号,课程号,分数)

    用sQL语言完成下列操作:

    1)检索没有任何一门课程成绩在80分以下的所有学生的信息,包括学号、姓名和专业;

    2)检索没有获得奖学金、同时至少有一门课程成绩在95分以上的学生信息,包括学号、

    姓名和专业;

    3)对成绩得过满分(100分)的学生,如果没有获得奖学金的,将其奖学金设为1000元;

    4)定义学生成绩得过满分(100分)的课程视图AAA,包括课程号、名称和学分。


    正确答案:1)SELECT学号姓名专业FROM学生WHERE学号NOT IN (SELECT学号FROM学习WHERE分数<80) 2)SELECT学号姓名专业FROM学生学习WHERE学生.学号:学习.学号AND学习.课程号=课程.课程号AND学生.奖学金<=0 AND学习.分数>95; 3)LJPDATE学生 SET奖学金=1000 WHERE奖学金<=0 AND学号IN (SEI.ECT学号 FROM学习WHERE分数=100): 4)CREATE VIEW AAA(课程号名称学分)AS SELECT。课程号名称学分FORM课程wHERE课程号lN (SELECT课程号 FROM学习 WHERE分数=100);
    1)SELECT学号,姓名,专业FROM学生WHERE学号NOT IN (SELECT学号FROM学习WHERE分数<80) 2)SELECT学号,姓名,专业FROM学生,学习WHERE学生.学号:学习.学号AND学习.课程号=课程.课程号AND学生.奖学金<=0 AND学习.分数>95; 3)LJPDATE学生 SET奖学金=1000 WHERE奖学金<=0 AND学号IN (SEI.ECT学号 FROM学习WHERE分数=100): 4)CREATE VIEW AAA(课程号,名称,学分)AS SELECT。课程号,名称,学分FORM课程wHERE课程号lN (SELECT课程号 FROM学习 WHERE分数=100); 解析:主要考查了SQL的数据查询功能、数据定义功能和数据操纵功能。这类问题主要是考查对SELECT FROM WHERE语句的掌握。

  • 第15题:

    现有表: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.课程号0N S.学号=SC.学号


    正确答案:D
    用JOIN连接格式连接多个表时JOIN的顺序和ON的顺序应该是相反的,否则会影响到最终的查询结果。

  • 第16题:

    检索还未确定成绩的学生选课信息,正确的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表示内链接,内链接是通过比较源表间共享的列的值从多个源表检索行的操作。内联接排除来自不具有与其它源表中的行匹配的行的源表的行。

  • 第17题:

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

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

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

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

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


    正确答案:D
    本题采用嵌套查询。其中,ALL表示所有的结果。

  • 第18题:

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


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

  • 第19题:

    设教学数据库中有四个关系: 教师(教师编号,教师姓名,联系电话) 课程(课程号,课程名,教师编号) 学生(学号,学生姓名,年龄,性别,专业) 选课(学号,课程号,成绩)查询男生所学课程的课程号和课程名。


    正确答案:Selec 课程号,课程名 FROM 学生,选课,课程
    Where 学生.学号=选课.学号 and 选课.课程号=课程.课程号
    And 性别=’男’或 Selec 课程号,课程名 FROM 课程 where 课程号
    in(S.elect课程号from选课where学号in(S.elect学号from学生where性别=’男’))

  • 第20题:

    现有“学生选课”数据库,其中主要的表有:“学生”表(学号,姓名,性别,专业,出生年月),“选课”表(学号,课程号,成绩),“课程”表(课程号,课程名,所属专业,学分)按照下列要求写出SQL语句: (1)在“选课”表中,删除选了课程号为10004的所有选课记录。 (2)在“课程”表中,修改课程号为10008的课程名称:数字电路。 (3)设计子查询,查询“课程”表中,有哪些课程没有被任何同学报选。 (4)设计连接查询,查找选修了“数据结构”课程且成绩在80分及以上的学生的学号、姓名、课程名及成绩。


    正确答案: 1)use学生选课
    Delete from选课where课程号=’10004’
    2)use学生选课
    Update课程set课程名=’数字电路’where课程号=’10008’
    3)use学生选课
    Select课程号,课程名from课程where课程号notin
    (Select distinct课程号from选课)
    4)use学生选课
    Select学生.学号,姓名,课程.课程名,选课.成绩
    From学生join选课on学生.学号=选课.学号
    Join课程on课程.课程号=选课.课程号
    Where课程.课程名=’数据结构’and选课.成绩>=80

  • 第21题:

    问答题
    现有“学生选课”数据库,其中主要的表有:“学生”表(学号,姓名,性别,专业,出生年月),“选课”表(学号,课程号,成绩),“课程”表(课程号,课程名,所属专业,学分)按照下列要求写出SQL语句: (1)在“选课”表中,删除选了课程号为10004的所有选课记录。 (2)在“课程”表中,修改课程号为10008的课程名称:数字电路。 (3)设计子查询,查询“课程”表中,有哪些课程没有被任何同学报选。 (4)设计连接查询,查找选修了“数据结构”课程且成绩在80分及以上的学生的学号、姓名、课程名及成绩。

    正确答案: 1)use学生选课
    Delete from选课where课程号=’10004’
    2)use学生选课
    Update课程set课程名=’数字电路’where课程号=’10008’
    3)use学生选课
    Select课程号,课程名from课程where课程号notin
    (Select distinct课程号from选课)
    4)use学生选课
    Select学生.学号,姓名,课程.课程名,选课.成绩
    From学生join选课on学生.学号=选课.学号
    Join课程on课程.课程号=选课.课程号
    Where课程.课程名=’数据结构’and选课.成绩>=80
    解析: 暂无解析

  • 第22题:

    单选题
    设学生表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为超连接查询。

  • 第23题:

    问答题
    设教学数据库中有四个关系: 教师(教师编号,教师姓名,联系电话) 课程(课程号,课程名,教师编号) 学生(学号,学生姓名,年龄,性别,专业) 选课(学号,课程号,成绩)检索所有姓“李”的学生的姓名和年龄。

    正确答案: Select 学生姓名,年龄 from 学生 where 学生姓名 like ‘李%’
    解析: 暂无解析

  • 第24题:

    问答题
    设教学数据库中有四个关系: 教师(教师编号,教师姓名,联系电话) 课程(课程号,课程名,教师编号) 学生(学号,学生姓名,年龄,性别,专业) 选课(学号,课程号,成绩)查询男生所学课程的课程号和课程名。

    正确答案: Selec 课程号,课程名 FROM 学生,选课,课程
    Where 学生.学号=选课.学号 and 选课.课程号=课程.课程号
    And 性别=’男’或 Selec 课程号,课程名 FROM 课程 where 课程号
    in(S.elect课程号from选课where学号in(S.elect学号from学生where性别=’男’))
    解析: 暂无解析